Robustness fixes and test images for the jpeg, tiff, pnm, gif, xpm and tga
authorMatthias Clasen <matthiasc@src.gnome.org>
Fri, 14 Sep 2001 22:04:55 +0000 (22:04 +0000)
committerMatthias Clasen <matthiasc@src.gnome.org>
Fri, 14 Sep 2001 22:04:55 +0000 (22:04 +0000)
loaders.

gdk-pixbuf/ChangeLog
gdk-pixbuf/gdk-pixbuf-io.c
gdk-pixbuf/io-gif.c
gdk-pixbuf/io-jpeg.c
gdk-pixbuf/io-pnm.c
gdk-pixbuf/io-tga.c
gdk-pixbuf/io-tiff.c
gdk-pixbuf/io-xpm.c
gdk-pixbuf/test-images.h
gdk-pixbuf/test-loaders.c

index db94f05d0f4f66839bedff581394be4d0200e3ec..08eca748ebbb0643c0d6cebe0222a1b63447dbea 100644 (file)
@@ -1,3 +1,34 @@
+Fri Sep 14 22:53:45 2001  Matthias Clasen  <matthiasc@poet.de>
+
+       * io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load): Handle
+       out-of-memory situation better.
+
+       * io-pnm.c: Robustness fixes for pnm loader
+
+       * io-gif.c: Make gif loader survive TEST_RANDOMLY_MODIFY
+
+       * io-xpm.c (parse_color): detect very long color strings
+
+       All of the above from Matthias Clasen <matthiasc@poet.de>,
+       the remaining from Soeren Sandmann <sandmann@daimi.au.dk>.
+
+       * test-images.h: add tests:
+               - four valid ppm's, eight invalid (matthiasc@poet.de)
+               - one invalid xpm (matthiasc@poet.de)
+               - one valid tga, one invalid (sandmann@daimi.au.dk)
+               - one invalid tiff (sandmann@daimi.au.dk
+
+       * test-loaders.c: enable tests for ppm, png, gif, tga, tiff, xpm
+       
+       * io-tiff.c (gdk_pixbuf__tiff_image_stop_load): TIFFClientOpen can
+       fail - detect it when it happens
+
+       * io-tga.c (gdk_pixbuf__tga_load_increment): Fail if there is too
+       much data in file
+       
+       * gdk-pixbuf-io.c: moved wbmb check after ico check to avoid false
+       positives
+       
 Fri Sep 14 00:30:48 2001  Tim Janik  <timj@gtk.org>
 
        * Makefile.am: don't used BUILT_SOURCES to build marshal
index aef06defc875965a7997683aaffe504b8bdd25d2..5558ef65746cb3980334b9e79ebeba3323e0f513 100644 (file)
@@ -228,12 +228,12 @@ static GdkPixbufModule file_formats [] = {
        { "pnm",  pixbuf_check_pnm, NULL,  NULL, NULL, NULL, NULL, NULL, NULL },
        { "ras",  pixbuf_check_sunras, NULL,  NULL, NULL, NULL, NULL, NULL, NULL },
        { "bmp",  pixbuf_check_bmp, NULL,  NULL, NULL, NULL, NULL, NULL, NULL },
-       { "wbmp", pixbuf_check_wbmp, NULL, NULL, NULL, NULL, NULL, NULL, NULL },
        { "xbm",  pixbuf_check_xbm, NULL,  NULL, NULL, NULL, NULL, NULL, NULL },
        { "tga", pixbuf_check_tga, NULL, NULL, NULL, NULL, NULL, NULL, NULL },
        /* Moved at the bottom, because it causes false positives against many
           of my TGA files. */
-       { "ico",  pixbuf_check_ico, NULL,  NULL, NULL, NULL, NULL, NULL, NULL },
+       { "ico",  pixbuf_check_ico, NULL,  NULL, NULL, NULL, NULL, NULL, NULL },        
+       { "wbmp", pixbuf_check_wbmp, NULL, NULL, NULL, NULL, NULL, NULL, NULL },
        { NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL }
 };
 
index 68dcaa43056c128068ba5460445b2c3e7aeb4ca0..62cea01d28e9bc2efd26d6dda4de079334e5ce48 100644 (file)
@@ -613,6 +613,14 @@ lzw_read_byte (GifContext *context)
                }
 
                while (code >= context->lzw_clear_code) {
+                        if ((code >= (1 << MAX_LZW_BITS)) 
+                            || (context->lzw_sp >= context->lzw_stack + ((1 << (MAX_LZW_BITS)) * 2 + 1))) {
+                                g_set_error (context->error,
+                                             GDK_PIXBUF_ERROR,
+                                             GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
+                                             _("Bad code encountered"));
+                               return -2;
+                        }
                        *(context->lzw_sp)++ = context->lzw_table[1][code];
 
                        if (code == context->lzw_table[0][code]) {
@@ -1038,7 +1046,7 @@ gif_init (GifContext *context)
                              GDK_PIXBUF_ERROR,
                              GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
                              _("File does not appear to be a GIF file"));
-               return -1;
+               return -2;
        }
 
        strncpy (version, (char *) buf + 3, 3);
@@ -1051,7 +1059,7 @@ gif_init (GifContext *context)
                              GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
                              _("Version %s of the GIF file format is not supported"),
                              version);
-               return -1;
+               return -2;
        }
 
        /* read the screen descriptor */
index 6864a7895fe2d0bf3d0380c89eea3af9ac53dda9..f04c954f9eb322d541f002d3c054d9b3fd8c6f4a 100644 (file)
@@ -337,7 +337,16 @@ gdk_pixbuf__jpeg_image_begin_load (ModulePreparedNotifyFunc prepared_func,
        /* create libjpeg structures */
        jpeg_create_decompress (&context->cinfo);
 
-       context->cinfo.src = (struct jpeg_source_mgr *) g_new0 (my_source_mgr, 1);
+       context->cinfo.src = (struct jpeg_source_mgr *) g_try_malloc (sizeof (my_source_mgr));
+       if (!context->cinfo.src) {
+         g_set_error (error,
+                      GDK_PIXBUF_ERROR,
+                      GDK_PIXBUF_ERROR_INSUFFICIENT_MEMORY,
+                      _("Couldn't allocate memory for loading JPEG file"));
+         return NULL;
+       }
+       memset (context->cinfo.src, 0, sizeof (my_source_mgr));
+       
        src = (my_src_ptr) context->cinfo.src;
 
        context->cinfo.err = jpeg_std_error (&context->jerr.pub);
index 6bba2285cb3d9bec6e2ab53fee3b46e2e2a3d52d..eafe1309332e5f979eecf6516894310816806f57 100644 (file)
@@ -23,7 +23,6 @@
  */
 
 #include <config.h>
-#include <ctype.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
@@ -203,7 +202,7 @@ pnm_skip_whitespace (PnmIOBuffer *inbuf, GError **error)
                                return PNM_SUSPEND;
                        }
                        
-               } else if (!isspace (*inptr)) {
+               } else if (!g_ascii_isspace (*inptr)) {
                        inbuf->byte = inptr;
                        inbuf->nbytes = (guint) (inend - inptr);
                        return PNM_OK;
@@ -221,9 +220,10 @@ static gint
 pnm_read_next_value (PnmIOBuffer *inbuf, guint *value, GError **error)
 {
        register guchar *inptr, *word, *p;
-       guchar *inend, buf[128];
+       guchar *inend, buf[129];
        gchar *endptr;
        gint retval;
+       glong result;
        
        g_return_val_if_fail (inbuf != NULL, PNM_FATAL_ERR);
        g_return_val_if_fail (inbuf->byte != NULL, PNM_FATAL_ERR);
@@ -237,24 +237,25 @@ pnm_read_next_value (PnmIOBuffer *inbuf, guint *value, GError **error)
        inptr = inbuf->byte;
        
        /* copy this pnm 'word' into a temp buffer */
-       for (p = inptr, word = buf; (p < inend) && !isspace (*p) && (p - inptr < 128); p++, word++)
+       for (p = inptr, word = buf; (p < inend) && !g_ascii_isspace (*p) && (*p != '#') && (p - inptr < 128); p++, word++)
                *word = *p;
        *word = '\0';
        
        /* hmmm, there must be more data to this 'word' */
-       if (!isspace (*p))
-               return PNM_SUSPEND;
+       if (!g_ascii_isspace (*p) && (*p != '#')  && (p - inptr < 128))
+           return PNM_SUSPEND;
        
        /* get the value */
-       *value = strtol (buf, &endptr, 10);
-       if (*endptr != '\0') {
+       result = strtol (buf, &endptr, 10);
+       if (*endptr != '\0' || result < 0) {
                g_set_error (error,
                             GDK_PIXBUF_ERROR,
                             GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
                             _("PNM loader expected to find an integer, but didn't"));
                return PNM_FATAL_ERR;
        }
-       
+       *value = result;
+
        inbuf->byte = p;
        inbuf->nbytes = (guint) (inend - p);
        
@@ -281,7 +282,7 @@ pnm_read_header (PnmLoaderContext *context)
                if (*inbuf->byte != 'P') {
                        g_set_error (context->error,
                                     GDK_PIXBUF_ERROR,
-                                    GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
+                                    GDK_PIXBUF_ERROR_HEADER_CORRUPT,
                                     _("PNM file has an incorrect initial byte"));
                        return PNM_FATAL_ERR;
                }
@@ -311,7 +312,7 @@ pnm_read_header (PnmLoaderContext *context)
                default:
                        g_set_error (context->error,
                                     GDK_PIXBUF_ERROR,
-                                    GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
+                                    GDK_PIXBUF_ERROR_HEADER_CORRUPT,
                                     _("PNM file is not in a recognized PNM subformat"));
                        return PNM_FATAL_ERR;
                }
@@ -336,7 +337,7 @@ pnm_read_header (PnmLoaderContext *context)
                if (!width) {
                        g_set_error (context->error,
                                     GDK_PIXBUF_ERROR,
-                                    GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
+                                    GDK_PIXBUF_ERROR_HEADER_CORRUPT,
                                     _("PNM file has an image width of 0"));
                        return PNM_FATAL_ERR;
                }
@@ -357,7 +358,7 @@ pnm_read_header (PnmLoaderContext *context)
                if (!height) {
                        g_set_error (context->error,
                                     GDK_PIXBUF_ERROR,
-                                    GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
+                                    GDK_PIXBUF_ERROR_HEADER_CORRUPT,
                                     _("PNM file has an image height of 0"));
                        return PNM_FATAL_ERR;
                }
@@ -380,8 +381,24 @@ pnm_read_header (PnmLoaderContext *context)
                        if (context->maxval == 0) {
                                g_set_error (context->error,
                                             GDK_PIXBUF_ERROR,
-                                            GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
-                                            _("Maximum color value in PNM file is 0"));
+                                            GDK_PIXBUF_ERROR_HEADER_CORRUPT,
+                                            _("Maximum color value in PNM file is 0"));
+                               return PNM_FATAL_ERR;
+                       }
+
+                       if (context->maxval > 65535) {
+                               g_set_error (context->error,
+                                            GDK_PIXBUF_ERROR,
+                                            GDK_PIXBUF_ERROR_HEADER_CORRUPT,
+                                            _("Maximum color value in PNM file is too large"));
+                               return PNM_FATAL_ERR;
+                       }
+
+                       if (context->maxval > 255) {
+                               g_set_error (context->error,
+                                            GDK_PIXBUF_ERROR,
+                                            GDK_PIXBUF_ERROR_HEADER_CORRUPT,
+                                            _("Can't handle PNM files with maximum color values greater than 255"));
                                return PNM_FATAL_ERR;
                        }
                }
@@ -677,7 +694,7 @@ gdk_pixbuf__pnm_image_load (FILE *f, GError **error)
        
        inbuf = &context.inbuf;
        
-       while (!feof (f)) {
+       while (TRUE) {
                guint num_to_read;
                
                /* keep buffer as full as possible */
@@ -689,11 +706,14 @@ gdk_pixbuf__pnm_image_load (FILE *f, GError **error)
                nbytes = fread (inbuf->buffer + inbuf->nbytes, 1, num_to_read, f);
                
                /* error checking */
-               if (nbytes == 0 && ferror (f)) {
+               if (nbytes == 0) {
                        /* we ran out of data? */
                        if (context.pixbuf)
                                gdk_pixbuf_unref (context.pixbuf);
-                       g_warning ("io-pnm.c: Ran out of data.\n");
+                       g_set_error (error,
+                                    GDK_PIXBUF_ERROR,
+                                    GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
+                                    _("Premature end-of-file encountered"));
                        return NULL;
                }
                
@@ -713,23 +733,47 @@ gdk_pixbuf__pnm_image_load (FILE *f, GError **error)
                
                /* scan until we hit image data */
                if (!context.did_prescan) {
-                       retval = pnm_skip_whitespace (inbuf,
-                                                     context.error);
-                       if (retval == PNM_FATAL_ERR)
-                               return NULL;
-                       else if (retval == PNM_SUSPEND)
-                               continue;
-                       
+                       switch (context.type) {
+                       case PNM_FORMAT_PBM_RAW:
+                       case PNM_FORMAT_PGM_RAW:
+                       case PNM_FORMAT_PPM_RAW:
+                               if (inbuf->nbytes <= 0)
+                                       continue;
+                               /* raw formats require exactly one whitespace */
+                               if (!g_ascii_isspace(*(inbuf->byte))) 
+                                       {
+                                               g_set_error (error,
+                                                            GDK_PIXBUF_ERROR,
+                                                            GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
+                                                            _("Raw PNM formats require exactly one whitespace before sample data"));
+                                               return NULL;
+                                       }
+                               inbuf->nbytes--;
+                               inbuf->byte++;
+                               break;
+                       default:
+                               retval = pnm_skip_whitespace (inbuf,
+                                                             context.error);
+                               if (retval == PNM_FATAL_ERR)
+                                       return NULL;
+                               else if (retval == PNM_SUSPEND)
+                                       continue;
+                               break;
+                       }
                        context.did_prescan = TRUE;
                        context.output_row = 0;
                        context.output_col = 0;
                        
                        context.rowstride = context.width * 3;
-                       context.pixels = g_malloc (context.height * context.width * 3);
+                       context.pixels = g_try_malloc (context.height * context.width * 3);
                        
                        if (!context.pixels) {
                                /* Failed to allocate memory */
-                               g_warning ("Couldn't allocate pixel buf");
+                               g_set_error (error,
+                                            GDK_PIXBUF_ERROR,
+                                            GDK_PIXBUF_ERROR_INSUFFICIENT_MEMORY,
+                                            _("Can't allocate memory for loading PNM image"));
+                               return NULL;
                        }
                }
                
@@ -773,7 +817,14 @@ gdk_pixbuf__pnm_image_begin_load (ModulePreparedNotifyFunc prepared_func,
 {
        PnmLoaderContext *context;
        
-       context = g_new0 (PnmLoaderContext, 1);
+       context = g_try_malloc (sizeof (PnmLoaderContext));
+       if (!context) {
+               g_set_error(error, GDK_PIXBUF_ERROR, 
+                           GDK_PIXBUF_ERROR_INSUFFICIENT_MEMORY,
+                           _("Insufficient memory to load PNM context struct"));
+               return NULL;
+       }
+       memset (context, 0, sizeof (PnmLoaderContext));
        context->prepared_func = prepared_func;
        context->updated_func  = updated_func;
        context->user_data = user_data;
@@ -811,6 +862,11 @@ gdk_pixbuf__pnm_image_stop_load (gpointer data,
        if (context->pixbuf)
                gdk_pixbuf_unref (context->pixbuf);
 
+#if 0
+       /* We should ignore trailing newlines and we can't
+          generally complain about trailing stuff at all, since 
+          pnm allows to put multiple images in a file
+       */
        if (context->inbuf.nbytes > 0) {
                g_set_error (error,
                             GDK_PIXBUF_ERROR,
@@ -818,6 +874,7 @@ gdk_pixbuf__pnm_image_stop_load (gpointer data,
                             _("Unexpected end of PNM image data"));
                retval = FALSE;
        }
+#endif
        
        g_free (context);
 
@@ -895,14 +952,33 @@ gdk_pixbuf__pnm_image_load_increment (gpointer data,
                
                /* scan until we hit image data */
                if (!context->did_prescan) {
-                       retval = pnm_skip_whitespace (inbuf,
-                                                     context->error);
-                       
-                       if (retval == PNM_FATAL_ERR)
-                               return FALSE;
-                       else if (retval == PNM_SUSPEND)
-                               continue;
-                                               
+                       switch (context->type) {
+                       case PNM_FORMAT_PBM_RAW:
+                       case PNM_FORMAT_PGM_RAW:
+                       case PNM_FORMAT_PPM_RAW:
+                               if (inbuf->nbytes <= 0)
+                                       continue;
+                               /* raw formats require exactly one whitespace */
+                               if (!g_ascii_isspace(*(inbuf->byte)))
+                                       {
+                                               g_set_error (error,
+                                                            GDK_PIXBUF_ERROR,
+                                                            GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
+                                                            _("Raw PNM formats require exactly one whitespace before sample data"));
+                                               return FALSE;
+                                       }
+                               inbuf->nbytes--;
+                               inbuf->byte++;
+                               break;
+                       default:
+                               retval = pnm_skip_whitespace (inbuf,
+                                                             context->error);
+                               if (retval == PNM_FATAL_ERR)
+                                       return FALSE;
+                               else if (retval == PNM_SUSPEND)
+                                       continue;
+                               break;
+                       }
                        context->did_prescan = TRUE;
                        context->output_row = 0;
                        context->output_col = 0;
index 1f84d5ad2d9a63ed444d60919baccc041c44145e..f48f1276ef8805a00d0774897027dd39340c6819 100644 (file)
@@ -17,6 +17,9 @@
  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
  * Boston, MA 02111-1307, USA.
  *
+ */
+
+/*
  * Some NOTES about the TGA loader (2001/06/07, nikke@swlibero.org)
  *
  * - The module doesn't currently provide support for TGA images where the
@@ -117,6 +120,7 @@ struct _TGAColor {
 struct _TGAContext {
        TGAHeader *hdr;
        guint rowstride;
+       guint completed_lines;
        gboolean run_length_encoded;
 
        TGAColormap *cmap;
@@ -293,6 +297,7 @@ static gboolean fill_in_context(TGAContext *ctx, GError **err)
        else if (ctx->hdr->type == TGA_TYPE_TRUECOLOR)
                ctx->rowstride = ctx->pbuf->rowstride;
 
+       ctx->completed_lines = 0;
        return TRUE;
 }
 
@@ -724,9 +729,16 @@ static gboolean gdk_pixbuf__tga_load_increment(gpointer data,
                if (!parse_rle_data(ctx, err))
                        return FALSE;
        } else {
-               while (ctx->in->size >= ctx->rowstride)
+               while (ctx->in->size >= ctx->rowstride) {
+                       if (ctx->completed_lines >= ctx->pbuf->height) {
+                               g_set_error(err, GDK_PIXBUF_ERROR, GDK_PIXBUF_ERROR_FAILED,
+                                           _("Excess data in file"));
+                               return FALSE;
+                       }
                        if (!parse_data_for_row(ctx, err))
                                return FALSE;
+                       ctx->completed_lines++;
+               }
        }
 
        return TRUE;
index 9bae4f832b65a6fc3a2ba223f244c121aa82af25..d8b799344be3fbe49f1282a94ea5754e4571ebec 100644 (file)
@@ -257,11 +257,10 @@ gdk_pixbuf__tiff_image_load (FILE *f, GError **error)
         fd = fileno (f);
         tiff = TIFFFdOpen (fd, "libpixbuf-tiff", "r");
         
-        if (!tiff) {
-                g_set_error (error,
-                             GDK_PIXBUF_ERROR,
-                             GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
-                             _("Failed to open TIFF image"));
+        if (!tiff || global_error) {
+                tiff_set_error (error,
+                                GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
+                                _("Failed to open TIFF image"));
                 tiff_pop_handlers ();
 
                 G_UNLOCK (tiff_loader);
@@ -404,11 +403,10 @@ gdk_pixbuf__tiff_image_stop_load (gpointer data,
                                tiff_seek, tiff_close, 
                                tiff_size, 
                                tiff_map_file, tiff_unmap_file);
-        if (!tiff) {
-                g_set_error (error,
-                             GDK_PIXBUF_ERROR,
-                             GDK_PIXBUF_ERROR_FAILED,
-                             _("Failed to load TIFF image"));
+        if (!tiff || global_error) {
+                tiff_set_error (error,
+                                GDK_PIXBUF_ERROR_FAILED,
+                                _("Failed to load TIFF image"));
                 retval = FALSE;
         } else {
                 GdkPixbuf *pixbuf;
@@ -418,10 +416,16 @@ gdk_pixbuf__tiff_image_stop_load (gpointer data,
                         g_object_unref (G_OBJECT (pixbuf));
                 retval = pixbuf != NULL;
                 TIFFClose (tiff);
+                if (global_error)
+                        {
+                                tiff_set_error (error,
+                                                GDK_PIXBUF_ERROR_FAILED,
+                                                _("Failed to load TIFF image"));
+                                retval = FALSE;
+                        }
         }
-        
-        if (global_error)
-                g_warning ("Error left set in TIFF loader\n");
+
+        g_assert (!global_error);
         
         g_free (context->buffer);
         g_free (context);
index 1f99088c3d46e5d5983f8402da1e8aac07e902a9..9784b68d01e2dcf1dced79963a3e456f1517ec35 100644 (file)
@@ -1,3 +1,4 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
 /* GdkPixbuf library - XPM image loader
  *
  * Copyright (C) 1999 Mark Crichton
@@ -926,7 +927,7 @@ find_color(const char *name,
  *     Partial implementation of X color name parsing interface.
  *
  * Results:
- *     Returns non-zero on success.
+ *     Returns TRUE on success.
  *
  * Side effects:
  *     None.
@@ -947,7 +948,8 @@ parse_color (const char *spec,
                }
                i /= 3;
 
-               sprintf(fmt, "%%%dx%%%dx%%%dx", i, i, i);
+               g_snprintf (fmt, 16, "%%%dx%%%dx%%%dx", i, i, i);
+
                if (sscanf(spec+1, fmt, &red, &green, &blue) != 3) {
                        return FALSE;
                }
@@ -977,20 +979,13 @@ parse_color (const char *spec,
 }
 
 static gint
-xpm_seek_string (FILE *infile, const gchar *str, gint skip_comments)
+xpm_seek_string (FILE *infile, const gchar *str)
 {
        char instr[1024];
 
        while (!feof (infile)) {
                if (fscanf (infile, "%1023s", instr) < 0)
                         return FALSE;
-               if (skip_comments == TRUE && strcmp (instr, "/*") == 0) {
-                       fscanf (infile, "%1023s", instr);
-                       while (!feof (infile) && strcmp (instr, "*/") != 0)
-                               fscanf (infile, "%1023s", instr);
-                       fscanf (infile, "%1023s", instr);
-               }
-
                if (strcmp (instr, str) == 0)
                        return TRUE;
        }
@@ -1176,7 +1171,7 @@ file_buffer (enum buf_op op, gpointer handle)
 
        switch (op) {
        case op_header:
-               if (xpm_seek_string (h->infile, "XPM", FALSE) != TRUE)
+               if (xpm_seek_string (h->infile, "XPM") != TRUE)
                        break;
 
                if (xpm_seek_char (h->infile, '{') != TRUE)
@@ -1258,11 +1253,35 @@ pixbuf_create_from_xpm (const gchar * (*get_buf) (enum buf_op op, gpointer handl
                return NULL;
        }
        sscanf (buffer, "%d %d %d %d", &w, &h, &n_col, &cpp);
-       if (cpp >= 32) {
+       if (w <= 0) {
+                g_set_error (error,
+                             GDK_PIXBUF_ERROR,
+                             GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
+                             _("XPM file has image width <= 0"));
+               return NULL;
+
+       }
+       if (h <= 0) {
+                g_set_error (error,
+                             GDK_PIXBUF_ERROR,
+                             GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
+                             _("XPM file has image height <= 0"));
+               return NULL;
+
+       }
+       if (n_col <= 0) {
+                g_set_error (error,
+                             GDK_PIXBUF_ERROR,
+                             GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
+                             _("XPM file has invalid number of colors"));
+               return NULL;
+
+       }
+       if (cpp <= 0 || cpp >= 32) {
                 g_set_error (error,
                              GDK_PIXBUF_ERROR,
                              GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
-                             _("XPM has more than 31 chars per pixel"));
+                             _("XPM has invalid number of chars per pixel"));
                return NULL;
        }
 
@@ -1430,7 +1449,6 @@ gdk_pixbuf__xpm_image_begin_load (ModulePreparedNotifyFunc prepare_func,
        XPMContext *context;
        gint fd;
 
-       g_warning ("load start");
        context = g_new (XPMContext, 1);
        context->prepare_func = prepare_func;
        context->update_func = update_func;
index 3ecd8db4e3795e6c7fe0f6d9d631e5c8f1a01081..fe7582b33459c4c854785fd0cc7fe04247f8700f 100644 (file)
@@ -825,6 +825,141 @@ static unsigned char const tiff1_test_1[] = {
     0
 };
 
+static unsigned char const tiff1_test_2[] = {
+    TIFF1_HEADER,
+    0, 0, 6, 222, 128, 0, 32, 80, 56, 36, 22, 13, 7, 132, 66, 97, 80,
+    184, 100, 54, 29, 15, 136, 68, 98, 81, 56, 164, 86, 45, 23, 140,
+    70, 99, 81, 184, 228, 118, 61, 21, 23, 72, 79, 231, 227, 233, 116,
+    184, 89, 143, 202, 101, 82, 162, 188, 181, 194, 224, 112, 61, 222,
+    207, 86, 179, 61, 148, 138, 65, 159, 2, 179, 185, 92, 246, 125,
+    15, 157, 133, 90, 12, 246, 211, 241, 246, 251, 123, 61, 30, 109,
+    38, 107, 33, 40, 139, 66, 22, 138, 165, 41, 253, 86, 54, 98, 172,
+    48, 23, 241, 213, 98, 165, 76, 74, 35, 17, 32, 198, 171, 35, 201,
+    224, 239, 122, 218, 108, 238, 230, 67, 9, 124, 160, 75, 164, 12,
+    69, 210, 169, 136, 56, 28, 171, 94, 98, 36, 1, 232, 245, 212, 233,
+    116, 188, 29, 206, 198, 189, 49, 84, 161, 76, 206, 9, 4, 104, 26,
+    149, 72, 163, 117, 186, 157, 86, 103, 123, 149, 198, 224, 98, 175,
+    151, 9, 116, 122, 31, 21, 98, 189, 104, 97, 233, 100, 117, 85,
+    220, 237, 118, 62, 38, 83, 86, 82, 141, 50, 145, 206, 160, 4, 91,
+    53, 122, 189, 93, 131, 200, 185, 220, 141, 38, 99, 25, 140, 188,
+    91, 39, 243, 131, 209, 216, 215, 69, 199, 134, 41, 241, 249, 118,
+    235, 133, 186, 218, 108, 83, 49, 9, 4, 66, 0, 244, 110, 52, 153,
+    121, 74, 39, 11, 113, 175, 209, 102, 178, 88, 11, 133, 226, 209,
+    86, 148, 70, 33, 5, 98, 113, 63, 35, 221, 8, 68, 161, 208, 141,
+    38, 83, 17, 146, 194, 94, 47, 86, 170, 222, 169, 232, 136, 190,
+    11, 130, 184, 164, 51, 174, 102, 17, 114, 89, 23, 101, 145, 84,
+    93, 150, 37, 65, 84, 80, 19, 35, 152, 218, 51, 61, 240, 170, 14,
+    190, 7, 176, 49, 100, 85, 148, 36, 211, 168, 64, 191, 225, 234,
+    18, 156, 234, 164, 154, 160, 69, 144, 99, 232, 210, 49, 139, 175,
+    96, 69, 11, 56, 226, 228, 100, 69, 145, 68, 74, 66, 21, 160, 99,
+    80, 202, 47, 196, 130, 0, 118, 28, 33, 129, 112, 86, 21, 142, 131,
+    104, 206, 55, 64, 143, 91, 219, 24, 52, 43, 184, 56, 114, 74, 7,
+    201, 240, 124, 24, 37, 241, 116, 28, 6, 161, 146, 7, 33, 201, 104,
+    130, 130, 147, 138, 177, 216, 180, 226, 7, 10, 12, 152, 159, 10,
+    162, 168, 168, 180, 158, 167, 137, 224, 120, 25, 102, 25, 120, 65,
+    15, 131, 172, 204, 138, 72, 97, 88, 161, 61, 140, 163, 24, 196,
+    169, 138, 82, 192, 101, 59, 204, 232, 240, 218, 53, 141, 103, 91,
+    0, 104, 153, 198, 97, 112, 88, 149, 114, 64, 196, 187, 47, 8, 117,
+    14, 53, 151, 148, 201, 207, 77, 166, 115, 105, 222, 119, 81, 71,
+    57, 162, 250, 151, 80, 220, 76, 66, 175, 146, 5, 10, 140, 71, 225,
+    193, 160, 101, 24, 102, 65, 130, 93, 145, 164, 49, 1, 65, 72, 41,
+    13, 50, 93, 158, 170, 85, 122, 121, 157, 167, 89, 215, 79, 157,
+    172, 17, 216, 109, 155, 6, 171, 192, 250, 24, 144, 73, 82, 71,
+    186, 178, 85, 86, 140, 19, 132, 161, 30, 88, 148, 228, 248, 214,
+    51, 202, 8, 52, 92, 129, 175, 161, 233, 168, 105, 26, 71, 205,
+    204, 120, 157, 231, 105, 230, 179, 29, 39, 49, 200, 238, 155, 39,
+    41, 196, 111, 154, 70, 113, 148, 106, 25, 230, 89, 159, 89, 22,
+    69, 65, 64, 55, 197, 97, 91, 103, 105, 162, 243, 201, 17, 58, 8,
+    81, 242, 12, 217, 132, 79, 96, 78, 104, 168, 105, 145, 234, 153,
+    158, 135, 97, 210, 115, 155, 134, 177, 164, 214, 20, 5, 225, 142,
+    205, 86, 69, 217, 90, 83, 148, 70, 17, 112, 87, 147, 196, 177, 28,
+    190, 7, 120, 34, 45, 60, 135, 25, 8, 7, 39, 32, 116, 33, 109, 155,
+    159, 89, 201, 229, 116, 88, 39, 65, 181, 124, 89, 134, 81, 128,
+    93, 25, 70, 9, 117, 102, 60, 69, 203, 244, 87, 51, 132, 64, 247,
+    9, 101, 200, 169, 81, 169, 221, 103, 149, 210, 118, 22, 244, 128,
+    132, 226, 32, 195, 72, 210, 51, 234, 178, 145, 240, 164, 158, 102,
+    249, 178, 106, 233, 38, 57, 122, 91, 25, 15, 25, 158, 99, 152, 6,
+    107, 50, 97, 212, 186, 17, 114, 85, 148, 68, 208, 148, 36, 52, 26,
+    138, 30, 147, 11, 151, 89, 227, 94, 158, 135, 57, 198, 112, 212,
+    165, 73, 8, 62, 142, 242, 200, 92, 129, 151, 5, 193, 110, 122,
+    221, 116, 237, 218, 113, 154, 134, 105, 142, 101, 152, 69, 217,
+    156, 99, 23, 230, 81, 132, 93, 110, 69, 241, 160, 182, 243, 229,
+    249, 121, 5, 17, 196, 48, 254, 187, 130, 187, 242, 33, 228, 134,
+    171, 105, 123, 205, 24, 87, 217, 132, 225, 160, 227, 80, 198, 47,
+    192, 130, 234, 130, 109, 186, 24, 149, 66, 107, 26, 38, 103, 82,
+    103, 51, 60, 225, 117, 56, 151, 134, 100, 228, 100, 232, 197, 225,
+    102, 85, 146, 164, 105, 10, 36, 97, 61, 146, 42, 56, 71, 68, 239,
+    178, 66, 241, 130, 147, 20, 129, 139, 162, 200, 168, 25, 36, 55,
+    121, 191, 171, 157, 23, 145, 160, 100, 152, 102, 51, 52, 241, 150,
+    59, 161, 103, 207, 152, 6, 41, 118, 44, 215, 240, 151, 16, 65,
+    236, 58, 56, 231, 188, 70, 222, 33, 197, 75, 68, 21, 84, 170, 213,
+    218, 57, 24, 176, 231, 27, 111, 32, 106, 147, 97, 150, 102, 69,
+    184, 175, 21, 78, 116, 90, 183, 129, 54, 36, 132, 80, 130, 44, 1,
+    10, 3, 154, 36, 156, 14, 209, 251, 134, 28, 6, 8, 118, 141, 241,
+    180, 53, 143, 2, 163, 24, 109, 200, 95, 139, 5, 252, 122, 4, 48,
+    56, 125, 144, 149, 10, 187, 67, 188, 53, 7, 80, 231, 50, 195, 124,
+    109, 141, 56, 240, 243, 5, 240, 205, 24, 130, 244, 90, 10, 161,
+    68, 24, 10, 145, 24, 12, 201, 244, 78, 137, 193, 56, 44, 197, 144,
+    175, 21, 162, 168, 84, 9, 1, 26, 34, 140, 81, 140, 135, 132, 29,
+    46, 13, 65, 160, 50, 199, 41, 206, 55, 67, 132, 104, 191, 72, 148,
+    47, 22, 104, 180, 131, 226, 45, 105, 17, 16, 214, 89, 23, 24, 208,
+    87, 236, 236, 119, 194, 193, 224, 106, 25, 248, 206, 65, 34, 168,
+    58, 36, 136, 198, 65, 198, 64, 196, 24, 17, 164, 110, 142, 56,
+    136, 53, 222, 73, 226, 23, 2, 232, 87, 138, 120, 66, 31, 8, 144,
+    66, 147, 76, 92, 115, 46, 177, 224, 229, 35, 224, 238, 129, 235,
+    200, 111, 201, 1, 152, 43, 197, 40, 157, 72, 161, 156, 19, 176,
+    57, 14, 64, 133, 140, 91, 28, 67, 116, 108, 194, 225, 172, 53, 70,
+    112, 200, 25, 169, 200, 96, 11, 97, 90, 137, 8, 144, 70, 44, 48,
+    76, 105, 158, 9, 28, 54, 230, 56, 215, 140, 238, 100, 99, 140, 83,
+    128, 37, 196, 112, 135, 125, 136, 226, 95, 144, 65, 24, 124, 155,
+    48, 213, 152, 242, 224, 100, 58, 145, 122, 130, 132, 123, 174, 54,
+    106, 84, 136, 7, 64, 222, 26, 163, 138, 204, 137, 13, 38, 36, 10,
+    241, 76, 39, 131, 179, 224, 154, 164, 28, 44, 166, 161, 178, 53,
+    6, 239, 182, 59, 195, 73, 231, 11, 241, 104, 43, 5, 24, 154, 18,
+    220, 152, 47, 133, 160, 106, 72, 72, 144, 123, 14, 193, 200, 24,
+    155, 214, 50, 185, 32, 184, 196, 84, 162, 180, 82, 9, 196, 4, 19,
+    39, 153, 6, 73, 194, 248, 91, 139, 37, 152, 53, 92, 211, 165, 202,
+    194, 197, 213, 138, 161, 60, 37, 68, 115, 218, 15, 193, 173, 29,
+    168, 66, 24, 50, 6, 48, 196, 29, 99, 160, 115, 77, 199, 252, 45,
+    5, 17, 175, 160, 238, 62, 140, 144, 119, 92, 30, 197, 240, 182,
+    21, 238, 113, 207, 58, 8, 148, 47, 88, 248, 182, 168, 34, 181,
+    126, 138, 5, 74, 42, 160, 200, 170, 19, 162, 100, 75, 136, 163,
+    228, 38, 132, 200, 152, 22, 85, 108, 106, 85, 213, 204, 62, 98, 8,
+    229, 159, 131, 21, 13, 8, 48, 246, 29, 105, 233, 10, 9, 205, 238,
+    95, 10, 97, 127, 80, 159, 227, 69, 104, 135, 141, 181, 11, 74, 36,
+    44, 155, 104, 184, 134, 82, 204, 109, 14, 104, 192, 55, 71, 66,
+    239, 148, 3, 246, 194, 20, 161, 226, 188, 134, 244, 220, 91, 2,
+    124, 42, 86, 186, 210, 67, 4, 200, 144, 17, 66, 224, 87, 10, 119,
+    160, 244, 133, 227, 206, 166, 242, 236, 94, 86, 57, 184, 54, 74,
+    96, 224, 27, 99, 93, 203, 194, 197, 130, 58, 99, 72, 222, 60, 13,
+    208, 89, 30, 144, 250, 7, 9, 229, 143, 173, 69, 128, 84, 156, 40,
+    154, 40, 134, 32, 188, 22, 182, 98, 73, 82, 227, 126, 45, 157, 56,
+    193, 166, 241, 180, 97, 186, 113, 132, 55, 70, 192, 212, 146, 3,
+    46, 35, 12, 90, 228, 131, 196, 192, 80, 124, 246, 200, 135, 17,
+    32, 121, 41, 40, 18, 15, 19, 44, 156, 83, 87, 118, 228, 47, 97,
+    149, 203, 174, 85, 17, 102, 89, 177, 138, 47, 238, 13, 148, 20,
+    194, 224, 60, 7, 59, 168, 68, 138, 8, 118, 156, 239, 142, 156,
+    137, 25, 124, 41, 6, 11, 39, 116, 181, 141, 231, 39, 17, 118, 219,
+    198, 3, 111, 24, 35, 68, 182, 161, 171, 34, 141, 143, 93, 239, 34,
+    133, 4, 53, 23, 49, 10, 31, 131, 184, 145, 132, 55, 96, 73, 78,
+    225, 58, 47, 167, 248, 192, 131, 50, 244, 87, 215, 115, 126, 45,
+    5, 176, 172, 20, 135, 160, 66, 162, 28, 20, 71, 33, 27, 190, 11,
+    171, 108, 48, 7, 164, 36, 36, 4, 72, 130, 68, 194, 16, 78, 9, 49,
+    25, 7, 196, 216, 156, 16, 242, 20, 52, 192, 108, 78, 74, 84, 163,
+    142, 73, 78, 57, 199, 35, 240, 106, 227, 148, 166, 63, 201, 89,
+    47, 38, 100, 220, 157, 147, 242, 134, 81, 202, 81, 140, 128, 128,
+    0, 14, 1, 0, 0, 3, 0, 0, 0, 1, 0, 47, 0, 0, 1, 11, 0, 3, 0, 0, 0,
+    1, 0, 48, 0, 0, 1, 2, 0, 3, 0, 0, 0, 3, 0, 0, 7, 140, 1, 3, 0, 3,
+    0, 0, 0, 1, 0, 5, 0, 0, 1, 6, 0, 3, 0, 0, 0, 1, 0, 2, 0, 0, 1, 17,
+    0, 4, 0, 0, 0, 1, 0, 0, 0, 8, 1, 18, 0, 3, 0, 0, 0, 1, 0, 1, 0, 0,
+    1, 21, 0, 3, 0, 0, 0, 1, 0, 3, 0, 0, 1, 22, 0, 3, 0, 0, 0, 1, 0,
+    48, 0, 0, 1, 23, 83, 4, 0, 0, 0, 1, 0, 0, 6, 214, 1, 26, 0, 5, 0,
+    0, 0, 1, 0, 0, 7, 146, 1, 27, 0, 5, 0, 0, 0, 1, 0, 0, 7, 154, 1,
+    28, 0, 3, 0, 0, 0, 1, 0, 1, 0, 0, 1, 40, 0, 3, 0, 0, 0, 1, 0, 2,
+    0, 0, 0, 0, 0, 0, 0, 8, 0, 8, 0, 144, 18, 192, 0, 0, 0, 4, 0, 0,
+    18, 192, 0, 0, 0, 4, 0, 0
+};
+
 static unsigned char const valid_ico_test[] = {
     0, 0, 1, 0, 1, 0, 16, 16, 16, 0, 0, 0, 0, 0, 40, 1, 0, 0, 22, 0, 0,
     0, 40, 0, 0, 0, 16, 0, 0, 0, 32, 0, 0, 0, 1, 0, 4, 0, 0, 0, 0, 0,
@@ -2444,4 +2579,4997 @@ static unsigned char const valid_jpeg_test[] = {
     255, 217
 };
 
+
+static unsigned char const valid_tga_test[] = {
+    0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 239, 0, 33, 0, 24, 32, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0,
+    0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0,
+    0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0,
+    0, 0, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255,
+    255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0,
+    0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0,
+    0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0,
+    0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0,
+    0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0,
+    0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0,
+    0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0,
+    0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255,
+    255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0,
+    0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0,
+    0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255,
+    255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255,
+    255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0,
+    0, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0,
+    0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0,
+    0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0,
+    0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 0, 0, 0,
+    0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0,
+    0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0,
+    255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0,
+    0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0,
+    0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255
+};
+
+static unsigned char const tga_test_1[] = {
+    0, 0, 2, 0, 0, 0, 0, 0, 0, 153, 0, 0, 19, 0, 116, 0, 24, 32, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 204, 255, 255, 255, 255, 255, 255, 255, 255, 47, 255, 255,
+    255, 255, 255, 89, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 123, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 174, 255, 156, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 15, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 217, 255,
+    255, 255, 255, 28, 255, 255, 255, 255, 255, 255, 22, 255, 255, 38,
+    255, 255, 145, 109, 255, 255, 255, 255, 255, 187, 255, 255, 255,
+    255, 255, 189, 255, 255, 54, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 28, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 174, 255, 255, 255, 255, 255, 255, 255, 26, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 54, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 43, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 232, 255, 255, 240, 255, 255, 255, 255, 255, 90, 255,
+    255, 255, 255, 255, 255, 255, 146, 107, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 79, 255, 0, 0, 0, 0, 0, 0, 243,
+    0, 0, 0, 0, 0, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 130, 176, 0,
+    0, 0, 0, 6, 0, 0, 0, 222, 0, 0, 0, 0, 129, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 169, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 155, 255, 255, 255, 255, 255, 255, 238, 255, 255, 255,
+    255, 255, 221, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 161, 255, 255, 255, 255, 255, 255, 255,
+    255, 117, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 122, 255, 255, 255, 201, 255, 255, 195, 255, 255, 255, 255,
+    83, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 24, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 73, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 196, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 29, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 212, 255, 255, 255, 255, 21, 255, 255,
+    255, 131, 255, 255, 71, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 38, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 215, 148, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    156, 255, 94, 255, 255, 255, 114, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 47, 255, 255, 255, 63, 255,
+    255, 255, 255, 255, 255, 105, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 39, 255, 255, 255, 255, 255, 255, 255, 180, 255,
+    255, 198, 255, 255, 255, 255, 255, 0, 255, 255, 255, 46, 255, 255,
+    255, 255, 255, 255, 132, 75, 37, 255, 255, 255, 2, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 158, 255, 255, 128, 255, 255,
+    251, 255, 255, 255, 255, 255, 255, 255, 255, 229, 255, 102, 255,
+    255, 255, 255, 255, 255, 255, 210, 255, 255, 255, 255, 255, 255,
+    255, 249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 214, 255, 255, 209, 255, 37,
+    255, 255, 255, 62, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    184, 255, 255, 255, 255, 255, 255, 255, 13, 255, 255, 255, 255,
+    152, 255, 255, 255, 255, 255, 255, 255, 124, 255, 255, 255, 255,
+    255, 255, 249, 255, 255, 255, 152, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 203, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 104, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 205, 255, 27, 255, 255,
+    186, 255, 255, 115, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 9, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 57, 255, 255, 88, 255, 255, 255, 255, 117, 255, 255, 255,
+    241, 255, 255, 255, 50, 255, 255, 255, 255, 100, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 11, 255, 255, 255, 255, 106, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 145, 255, 255, 255, 255, 255, 240, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 129, 255, 255, 255, 255, 255, 150,
+    255, 255, 99, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 224, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 20, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 203, 255, 255,
+    255, 255, 195, 255, 255, 255, 255, 255, 255, 255, 224, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 163, 255,
+    255, 255, 255, 255, 255, 255, 255, 19, 255, 255, 255, 255, 255,
+    255, 22, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 101, 255, 117, 94, 255, 255, 255, 40, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 196, 255,
+    255, 101, 255, 255, 244, 255, 255, 255, 255, 255, 4, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 157,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 29, 255, 255, 255, 255, 255, 255, 255, 255, 218,
+    255, 255, 255, 255, 255, 177, 255, 255, 255, 255, 170, 255, 255,
+    255, 255, 255, 255, 255, 95, 142, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 166, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 108, 255, 255, 150, 255, 255,
+    255, 255, 255, 76, 255, 255, 255, 255, 255, 255, 156, 255, 255,
+    255, 255, 255, 255, 255, 255, 153, 255, 255, 255, 255, 255, 255,
+    221, 255, 255, 255, 255, 255, 255, 255, 255, 255, 92, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 116, 255, 255, 255, 255,
+    255, 136, 255, 255, 255, 255, 255, 255, 255, 127, 255, 255, 255,
+    255, 255, 255, 255, 143, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 51, 255, 166, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 91, 121, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 21, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 208, 255, 255,
+    142, 255, 255, 255, 255, 193, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 89, 255, 255, 255, 255,
+    163, 255, 255, 255, 57, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 7, 255, 255, 255, 255, 38, 255, 255, 255, 105, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 58, 255, 255, 255, 124, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 33, 255, 255, 255,
+    255, 148, 255, 255, 255, 255, 255, 255, 255, 255, 255, 244, 255,
+    255, 255, 255, 255, 94, 255, 255, 255, 191, 255, 255, 255, 255,
+    255, 63, 255, 255, 255, 255, 132, 255, 255, 255, 194, 255, 255,
+    255, 255, 76, 34, 255, 255, 255, 255, 154, 255, 255, 255, 255,
+    255, 255, 202, 255, 255, 255, 255, 55, 255, 255, 255, 255, 255,
+    255, 227, 255, 255, 255, 255, 255, 51, 255, 255, 255, 255, 255,
+    255, 255, 255, 237, 255, 255, 255, 255, 188, 255, 255, 206, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 42, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 70,
+    255, 155, 255, 255, 255, 63, 255, 255, 255, 255, 54, 255, 255,
+    255, 52, 255, 255, 255, 255, 255, 255, 16, 118, 239, 255, 255,
+    212, 255, 255, 69, 255, 255, 255, 255, 255, 173, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 240, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 172, 255, 255, 255, 255, 255, 255, 226,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 59, 255, 255, 71, 255, 255, 255,
+    255, 255, 255, 116, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    236, 255, 255, 255, 255, 255, 255, 217, 255, 255, 0, 255, 255,
+    255, 255, 255, 68, 255, 255, 255, 255, 255, 140, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 140, 198, 189, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 50, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    65, 255, 209, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 118, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 19, 255, 255, 255, 255, 255, 255, 255, 255, 171,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 156, 255, 255, 181,
+    255, 255, 255, 255, 255, 255, 255, 23, 255, 255, 255, 255, 255,
+    153, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    29, 255, 255, 10, 255, 255, 255, 255, 217, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 173,
+    255, 255, 182, 255, 255, 255, 255, 194, 255, 255, 229, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 196, 255, 98, 255, 255, 255,
+    255, 235, 255, 255, 136, 185, 255, 255, 255, 255, 255, 255, 238,
+    255, 255, 38, 255, 55, 255, 255, 255, 255, 255, 255, 255, 255, 13,
+    255, 255, 255, 255, 255, 255, 63, 255, 255, 255, 255, 255, 255,
+    255, 255, 132, 255, 255, 255, 193, 255, 255, 255, 145, 255, 255,
+    103, 255, 250, 255, 255, 255, 156, 12, 255, 255, 255, 255, 131,
+    249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    20, 255, 190, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    44, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 64, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 255, 255,
+    255, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 5, 255, 255, 255,
+    255, 53, 255, 255, 255, 215, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 36, 255, 255, 255, 255, 255, 125,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 189, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 215, 255, 175, 255, 255, 57, 255, 255, 255, 255, 255,
+    251, 255, 255, 255, 255, 255, 255, 255, 170, 255, 255, 159, 255,
+    255, 127, 84, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 160, 255, 255, 255, 255, 255, 255, 255, 255,
+    218, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 154, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 202, 255, 255, 255, 255, 255,
+    255, 255, 29, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 126, 255, 166, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 244, 255, 255, 255, 255, 255, 255, 255, 255, 202,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 57, 255, 255,
+    255, 166, 47, 255, 255, 255, 255, 255, 255, 255, 253, 255, 255,
+    255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 29, 255, 34, 255, 255, 255, 255, 255, 255, 1,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 111, 255, 247, 255, 255, 124, 23, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 26, 255, 255, 127, 255, 255,
+    255, 255, 255, 1, 255, 221, 255, 255, 255, 255, 112, 172, 255,
+    255, 255, 255, 87, 255, 255, 253, 255, 255, 255, 216, 255, 136,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 22, 255, 255,
+    220, 255, 255, 255, 143, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 14, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 218, 255, 255, 255, 255, 255, 255, 162, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 64, 255, 255,
+    255, 255, 255, 255, 6, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 200, 255, 255, 215, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 161, 255, 255, 255, 255, 255, 255, 255,
+    255, 150, 84, 255, 255, 255, 255, 255, 255, 255, 255, 66, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 146, 255, 138, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 103, 255, 255, 255, 255, 177, 255, 255, 49, 255, 255, 255,
+    255, 255, 255, 236, 255, 255, 255, 255, 255, 255, 51, 255, 244,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 24, 255, 255, 255, 255, 255, 255,
+    255, 255, 49, 255, 255, 255, 255, 255, 255, 255, 255, 255, 54,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 247, 255, 255, 255, 24, 255,
+    255, 255, 255, 255, 255, 255, 7, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 201, 255, 255, 255, 255,
+    255, 255, 255, 179, 255, 255, 255, 255, 255, 255, 255, 255, 118,
+    255, 6, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 207, 255, 84, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 41, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 99, 255, 255, 255, 255, 255, 255, 255, 137, 255, 255, 255,
+    255, 255, 255, 255, 255, 223, 255, 255, 255, 255, 255, 255, 60,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 86, 255, 255, 255, 149, 255, 255, 255,
+    255, 255, 255, 255, 255, 166, 255, 255, 180, 255, 255, 255, 255,
+    72, 49, 227, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 177, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 198, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 235, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 76, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 206, 255, 126, 255, 255, 255,
+    255, 255, 161, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 143, 255, 255, 255, 190, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 34, 232, 255, 255, 255, 255, 255,
+    255, 255, 20, 255, 255, 255, 255, 255, 255, 255, 255, 255, 87,
+    255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 73, 255, 255,
+    255, 163, 255, 255, 255, 255, 160, 255, 90, 255, 255, 255, 14,
+    255, 255, 255, 255, 255, 255, 255, 255, 234, 255, 255, 53, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 126, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 193, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 137, 255, 65, 255, 255,
+    255, 141, 255, 124, 255, 18, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 174, 255, 255, 255, 76, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 49, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 153, 255, 255, 255, 255, 153, 255, 223, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 61, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 32, 69, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 125, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 157, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 161, 255, 255, 255, 246, 128, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 121, 255, 255, 255, 255, 255,
+    255, 255, 31, 255, 255, 255, 255, 255, 100, 255, 255, 255, 255,
+    134, 255, 72, 255, 255, 255, 25, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 111, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 1, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 189, 255, 255, 255, 255, 255, 255, 255, 255, 255, 69, 255,
+    255, 255, 255, 255, 255, 255, 255, 28, 255, 126, 43, 59, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 33, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 217, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 87, 255, 255, 255,
+    255, 255, 255, 194, 255, 255, 255, 255, 111, 255, 64, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 241, 255, 255, 255, 255, 255, 59, 255, 255, 255, 67, 255, 97,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 119, 255, 59, 255, 255, 152, 255, 255, 255,
+    255, 138, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 83,
+    255, 255, 255, 248, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 63,
+    255, 255, 255, 255, 255, 94, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 161, 255, 255, 255, 255, 255, 119, 255,
+    255, 255, 255, 255, 255, 255, 255, 12, 196, 168, 114, 255, 255,
+    255, 255, 255, 255, 233, 217, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 184, 255, 255, 214, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 168, 255, 255, 255,
+    255, 174, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 83, 255, 255, 255, 255, 255, 11, 255, 255, 255, 57,
+    255, 255, 255, 255, 255, 173, 255, 134, 255, 180, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 31, 255, 255, 255, 255,
+    255, 66, 255, 255, 255, 255, 162, 255, 131, 255, 255, 255, 255,
+    255, 0, 0, 0, 255, 91, 209, 255, 255, 255, 255, 129, 255, 255,
+    255, 255, 255, 255, 255, 182, 255, 195, 255, 255, 255, 255, 255,
+    186, 255, 255, 255, 255, 38, 255, 255, 255, 255, 96, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 38, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    75, 255, 255, 244, 31, 255, 255, 126, 255, 255, 255, 193, 255,
+    210, 255, 255, 255, 255, 255, 255, 195, 255, 255, 255, 255, 255,
+    255, 10, 108, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 32, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 196, 255, 255, 255, 255, 255, 168, 19, 147,
+    255, 255, 255, 255, 255, 255, 255, 255, 164, 255, 255, 255, 255,
+    255, 54, 255, 255, 255, 47, 255, 1, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 72, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 42, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 67,
+    255, 255, 255, 255, 28, 255, 255, 255, 255, 122, 255, 255, 255,
+    255, 255, 255, 175, 255, 255, 255, 255, 255, 116, 255, 255, 255,
+    255, 255, 255, 22, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 130, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    157, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 197, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 165, 255, 255, 193, 255, 255,
+    255, 255, 255, 255, 118, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 32, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 155, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 135, 255, 255, 255, 255, 255, 255, 255, 255,
+    156, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 182, 255, 255, 26, 255, 255, 255,
+    255, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 186, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    72, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 156, 227, 255, 255, 255, 255, 255, 152, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 71, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 176, 97, 205, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 95, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 252, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 143, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 132, 255, 255, 255,
+    255, 69, 255, 133, 255, 255, 85, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 158, 136, 255, 255, 255, 255, 64, 230, 255, 255, 255,
+    255, 255, 44, 255, 255, 255, 255, 255, 255, 255, 255, 15, 255,
+    255, 255, 255, 172, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 41, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 180, 255, 202, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0,
+    232, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 112,
+    255, 255, 255, 255, 255, 212, 255, 172, 255, 255, 255, 255, 73,
+    255, 255, 255, 255, 255, 34, 255, 166, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 87, 255, 255, 51, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 181, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    253, 255, 69, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    195, 255, 255, 255, 255, 255, 111, 255, 255, 255, 255, 255, 166,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 168, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 16, 255, 255, 255, 255, 255, 255, 255, 109, 108, 255,
+    236, 255, 238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 110,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 126, 135, 255, 255, 255, 255, 255, 216, 86, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 33, 255, 255, 255,
+    255, 255, 135, 255, 255, 255, 255, 255, 255, 138, 255, 255, 255,
+    126, 255, 91, 255, 255, 255, 113, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 180, 255, 112, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 8, 255, 255, 255,
+    255, 147, 255, 255, 255, 255, 255, 197, 255, 196, 255, 255, 255,
+    255, 255, 195, 255, 255, 255, 255, 174, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 96, 255, 255, 255, 255,
+    255, 255, 255, 236, 255, 255, 152, 255, 80, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 251, 255, 175, 255, 255, 73,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 41, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 182, 255, 255, 255, 255, 151, 255, 255, 255,
+    255, 255, 255, 255, 255, 243, 255, 255, 255, 255, 174, 255, 255,
+    255, 255, 255, 52, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 155, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 240, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 92, 86, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 198, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 59, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 222, 255,
+    255, 109, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 228, 176, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 255, 131, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 140, 255, 255, 255, 255, 255, 213, 70,
+    255, 255, 255, 255, 169, 10, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 66, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 196, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    146, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 211,
+    255, 255, 255, 255, 56, 255, 255, 255, 163, 127, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    41, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 236, 255, 255, 255,
+    255, 21, 179, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 21, 255, 255, 240, 255, 255, 255, 255, 255, 255,
+    255, 255, 67, 255, 255, 255, 43, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 65, 255, 216, 255, 255, 255, 255,
+    255, 255, 3, 251, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 110, 255, 255, 255, 255, 255, 255, 87, 255, 255, 255,
+    86, 255, 255, 255, 255, 83, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 165, 255, 255, 255, 164, 255, 255, 255, 221, 255, 255,
+    255, 255, 255, 210, 255, 89, 255, 255, 255, 255, 255, 156, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    115, 43, 255, 255, 255, 255, 255, 255, 255, 255, 111, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 181, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    119, 222, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 128, 255, 255, 255, 255, 255, 255, 255, 255, 43,
+    255, 255, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 165,
+    214, 255, 255, 255, 255, 255, 255, 255, 255, 197, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 93,
+    151, 255, 237, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 57, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 25, 255, 255, 255, 255, 255, 255, 255, 112, 255,
+    255, 134, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 108,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 212, 255, 255, 255, 255, 255, 255, 158, 255, 255,
+    77, 255, 255, 255, 255, 192, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 202, 79, 255, 255, 255, 174, 54, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 244, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    188, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 218, 255, 255, 255, 255, 255, 255, 185,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 230, 255, 255, 255, 255, 255, 255, 255, 130, 175, 150,
+    255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 73, 35, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 123, 255, 255, 255, 157, 176, 247, 255,
+    255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 105, 255, 255, 15, 255, 255, 255, 255, 255, 15,
+    255, 255, 255, 255, 231, 255, 255, 255, 255, 23, 255, 255, 255,
+    255, 255, 255, 35, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 237, 0, 183, 255, 217, 255, 255, 255, 255, 255, 255,
+    84, 255, 251, 220, 252, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 212, 255, 255,
+    255, 255, 224, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 70, 255, 255, 255, 255,
+    255, 255, 255, 155, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 134, 255, 255, 255,
+    255, 255, 183, 255, 255, 255, 255, 255, 255, 255, 255, 114, 255,
+    255, 255, 255, 61, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 151, 255, 255, 255, 72, 255, 255, 255, 255, 255,
+    255, 255, 21, 159, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 28, 255, 255, 255, 255, 255, 255, 255, 145,
+    255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 92, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 235, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 66, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 110, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 67, 218, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 213, 255,
+    255, 255, 107, 103, 255, 255, 255, 255, 153, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 160, 255,
+    255, 255, 40, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 202, 255, 255, 255, 255, 209, 255, 255, 255, 255, 255, 255,
+    255, 255, 36, 255, 255, 255, 255, 57, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 5, 255,
+    255, 255, 255, 255, 255, 255, 81, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    97, 255, 238, 255, 255, 255, 255, 255, 255, 255, 62, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    69, 255, 255, 255, 215, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 212, 255, 255, 255, 255, 255, 255, 255, 91, 255, 59,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    146, 165, 255, 28, 255, 255, 255, 255, 255, 255, 255, 205, 255,
+    255, 255, 255, 85, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 1, 255, 255, 255, 255, 255, 38, 221, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 216, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 10, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    175, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 174, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 87, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 84, 255, 255, 102, 255, 227, 255, 255,
+    255, 255, 255, 255, 121, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 104, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 20, 18, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    134, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 91, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 15, 255, 255, 255, 255,
+    229, 255, 255, 239, 255, 255, 255, 255, 255, 255, 255, 255, 197,
+    153, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 244, 255, 255, 255, 255, 255, 220, 255, 255, 0, 0,
+    0, 255, 255, 255, 255, 181, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 8, 255, 255, 255, 255, 255, 255, 255,
+    255, 211, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 153,
+    228, 174, 255, 255, 255, 255, 95, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 154, 255, 255, 255, 255, 255, 255, 174, 255, 255,
+    255, 255, 207, 255, 255, 255, 255, 255, 255, 255, 61, 255, 75, 27,
+    255, 255, 255, 253, 255, 255, 116, 255, 27, 255, 255, 255, 177,
+    255, 255, 152, 255, 255, 58, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255,
+    255, 231, 255, 39, 255, 255, 255, 255, 255, 77, 255, 255, 17, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 195,
+    255, 255, 255, 103, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 60, 255, 255, 255, 40, 255, 255, 255, 255, 255, 255,
+    255, 193, 255, 255, 255, 255, 255, 255, 255, 255, 248, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 45, 140, 255, 127, 22, 255, 193, 255, 255,
+    255, 1, 255, 255, 14, 255, 255, 255, 255, 255, 255, 173, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 107,
+    255, 83, 255, 118, 255, 255, 196, 255, 255, 225, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 240, 255, 255, 255, 255, 255,
+    255, 126, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 0, 0, 113, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    105, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 33, 0, 0, 0, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 176, 255, 255, 255, 255,
+    46, 255, 255, 255, 255, 255, 255, 255, 255, 255, 110, 0, 0, 0, 0,
+    0, 255, 104, 181, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    233, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 165, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 136, 255, 255, 180, 255,
+    255, 255, 255, 255, 142, 255, 255, 255, 255, 255, 104, 255, 255,
+    255, 255, 255, 171, 255, 118, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 8, 97, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 75, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 210, 255, 255, 255, 255, 255, 255, 160, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 60, 65, 255,
+    255, 255, 255, 255, 255, 255, 222, 255, 167, 0, 24, 0, 0, 0, 58,
+    0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 251, 255, 146, 255, 255,
+    255, 207, 255, 255, 255, 255, 255, 255, 255, 149, 255, 255, 19, 0,
+    0, 0, 255, 255, 237, 255, 255, 255, 180, 255, 255, 255, 255, 255,
+    255, 233, 255, 0, 0, 0, 0, 131, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 134, 255, 255, 0, 0, 0, 255, 227, 255, 255, 255,
+    23, 255, 255, 211, 255, 255, 255, 53, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 154,
+    255, 255, 119, 61, 255, 255, 66, 115, 255, 255, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 48, 255, 255, 35, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 195, 255, 154, 255, 255,
+    255, 255, 255, 255, 255, 175, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 179, 89, 255, 255,
+    255, 127, 255, 255, 255, 255, 255, 255, 228, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 41, 255, 255, 255, 255, 255, 255, 255,
+    52, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 175, 255, 124, 255, 13, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 94,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 112, 255, 165, 171, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 160, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 55,
+    255, 62, 255, 255, 178, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 161, 255, 255, 255, 193, 255, 60, 255, 255, 255,
+    255, 255, 255, 204, 255, 255, 255, 255, 255, 255, 255, 255, 81,
+    255, 255, 255, 255, 255, 255, 47, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 92, 255, 255, 255, 255, 255, 255, 255,
+    255, 137, 255, 255, 255, 255, 255, 255, 63, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 129, 255, 24, 255,
+    255, 255, 255, 255, 255, 255, 117, 255, 255, 255, 200, 0, 49, 0,
+    0, 0, 23, 158, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 96, 255, 60, 255, 255, 0,
+    0, 0, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    74, 0, 0, 0, 0, 0, 255, 97, 255, 255, 160, 255, 241, 255, 255, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 197, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 21, 255, 255, 255, 255,
+    17, 255, 255, 255, 255, 255, 255, 255, 229, 255, 255, 255, 0, 0,
+    0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 24, 255,
+    255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 135, 0, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 65, 113, 255, 255, 120, 2, 255, 255, 255,
+    255, 255, 255, 255, 255, 95, 255, 255, 255, 255, 255, 204, 255,
+    255, 140, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 65, 255, 255, 177, 255, 255, 35, 255, 255, 255, 255,
+    255, 52, 255, 255, 255, 255, 255, 255, 121, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 70, 8, 255, 245,
+    255, 169, 255, 255, 255, 255, 58, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 226, 145, 255, 255, 255, 216, 0, 0, 168, 0, 0, 14, 255,
+    255, 255, 255, 197, 255, 255, 255, 255, 140, 255, 255, 255, 255,
+    0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 29, 255, 255, 255, 42, 0, 0, 0, 255, 255, 68, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 40, 255, 255, 71, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    86, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 189, 255, 255, 255,
+    255, 255, 255, 14, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 210, 0, 0, 255, 255, 255, 82, 255, 255, 255, 255, 255,
+    166, 144, 255, 255, 255, 255, 92, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 47,
+    255, 255, 206, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 141, 56, 255, 255, 50, 255, 255, 255, 255, 205, 255, 255,
+    255, 255, 255, 255, 40, 255, 233, 255, 146, 67, 255, 255, 255,
+    255, 255, 255, 255, 181, 255, 255, 255, 255, 255, 255, 255, 255,
+    95, 255, 255, 198, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    6, 255, 255, 255, 255, 205, 255, 255, 255, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 242, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255,
+    93, 255, 255, 255, 255, 255, 255, 255, 196, 255, 255, 255, 255,
+    255, 255, 135, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255,
+    255, 10, 255, 255, 255, 8, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 98, 255, 255, 255, 255, 255, 221, 255, 209,
+    255, 255, 255, 255, 255, 255, 24, 255, 255, 113, 255, 255, 75,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 198, 255, 255, 255, 255, 255, 255, 255, 120, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 87, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 5, 255, 255, 255, 0,
+    252, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 150, 255,
+    255, 255, 255, 46, 255, 255, 255, 255, 255, 255, 80, 136, 200,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 0, 0, 250, 186, 0, 0, 0, 0, 39, 255, 255, 255,
+    255, 255, 255, 255, 153, 255, 170, 255, 255, 0, 0, 0, 255, 255,
+    255, 255, 71, 255, 63, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 57, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 77, 255, 255, 255, 10, 255, 0, 255, 255, 255, 255, 194, 255,
+    255, 255, 255, 74, 128, 255, 255, 255, 2, 255, 255, 171, 255, 255,
+    255, 255, 255, 255, 37, 255, 255, 255, 255, 255, 255, 92, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 178, 0, 141, 255, 255, 255, 255, 227, 255, 41, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 115, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 0, 0, 0, 23, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 0, 251, 0, 0, 0, 0, 0, 255, 255, 137, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0,
+    22, 255, 255, 255, 218, 255, 255, 212, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 107, 255, 255, 255, 255,
+    255, 255, 255, 255, 125, 0, 0, 0, 255, 255, 206, 177, 255, 255,
+    255, 255, 163, 255, 255, 255, 255, 255, 255, 255, 255, 178, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 198, 255, 255, 255,
+    255, 242, 92, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 4, 255, 255, 255, 255,
+    255, 69, 0, 0, 0, 255, 255, 255, 255, 255, 255, 224, 255, 255, 86,
+    255, 255, 255, 255, 255, 255, 255, 148, 255, 79, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 137,
+    255, 86, 255, 255, 255, 255, 255, 255, 255, 193, 255, 255, 100,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 18, 255, 255, 255, 255, 255, 29, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 55, 255,
+    255, 255, 117, 255, 255, 189, 255, 255, 255, 255, 255, 255, 5,
+    255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 94, 255,
+    255, 255, 255, 255, 119, 255, 35, 255, 255, 255, 255, 10, 255,
+    255, 255, 255, 31, 255, 0, 0, 0, 159, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 134, 255, 255, 255, 255, 255, 255, 152,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 77,
+    255, 255, 255, 0, 0, 22, 255, 255, 255, 255, 255, 197, 255, 148,
+    255, 255, 255, 255, 255, 255, 255, 255, 145, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 245, 255, 255, 255,
+    255, 255, 255, 255, 255, 81, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 202, 49, 129, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 126, 255, 255, 255,
+    255, 255, 9, 255, 255, 255, 255, 255, 255, 255, 255, 135, 255,
+    195, 255, 255, 255, 255, 255, 255, 251, 255, 255, 255, 255, 255,
+    63, 240, 255, 255, 255, 228, 255, 62, 255, 17, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 43, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 11, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 7,
+    0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 94, 255, 255, 255, 78, 11,
+    0, 0, 0, 255, 250, 255, 213, 255, 255, 255, 2, 255, 255, 255, 255,
+    255, 255, 54, 255, 255, 255, 231, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 179,
+    255, 0, 0, 0, 255, 234, 255, 0, 0, 0, 255, 255, 255, 211, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 100,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    81, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 84, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    121, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 168, 0, 0, 255, 156, 255, 255, 255, 12, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 29, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 96, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 143, 0, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 13, 229, 0, 124,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 61,
+    255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 113, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 190, 255,
+    255, 234, 255, 255, 255, 255, 60, 255, 255, 51, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    127, 255, 255, 255, 255, 166, 255, 255, 255, 255, 255, 255, 75,
+    255, 255, 255, 255, 255, 255, 255, 220, 255, 65, 255, 0, 255, 255,
+    255, 0, 0, 0, 0, 62, 126, 255, 71, 255, 255, 159, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 104, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 209, 255, 255, 255, 255, 255, 255,
+    62, 255, 255, 255, 105, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 238, 255, 255,
+    255, 4, 79, 255, 255, 255, 255, 255, 255, 6, 255, 255, 177, 255,
+    120, 25, 8, 255, 255, 255, 255, 255, 255, 255, 255, 255, 92, 255,
+    255, 255, 255, 255, 255, 252, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 128, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 176, 45, 255, 255, 255, 255, 255, 255, 255, 255, 255, 180,
+    255, 0, 0, 176, 255, 255, 255, 255, 255, 255, 255, 255, 106, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 143, 255, 255, 255, 255, 255, 255, 255, 72, 255, 255,
+    255, 255, 75, 255, 255, 255, 255, 255, 255, 255, 255, 226, 255,
+    255, 255, 255, 255, 255, 255, 255, 159, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 218, 255, 255,
+    255, 255, 129, 255, 255, 255, 255, 255, 135, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 130, 255, 255, 152, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 64,
+    255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 185, 255, 255,
+    46, 255, 72, 255, 255, 255, 255, 112, 255, 255, 255, 0, 0, 0, 0,
+    0, 0, 255, 255, 37, 143, 255, 255, 255, 225, 255, 255, 255, 255,
+    255, 255, 255, 0, 197, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 203, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    62, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 46, 44, 0, 0, 0, 255, 49, 175, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 50,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 44, 255, 255, 255, 255,
+    255, 238, 255, 252, 11, 169, 255, 255, 255, 255, 112, 255, 255,
+    255, 255, 255, 255, 255, 255, 103, 255, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 231, 255, 255, 255, 157, 255, 255, 255, 132, 255,
+    255, 117, 255, 255, 255, 255, 255, 2, 255, 255, 255, 255, 249,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 0, 0, 53, 214, 255, 255, 255, 255, 255,
+    255, 233, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 31, 0, 167,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255,
+    255, 172, 255, 255, 255, 255, 255, 0, 0, 0, 129, 0, 0, 0, 0, 0,
+    151, 255, 255, 255, 255, 255, 255, 255, 255, 47, 255, 255, 255,
+    255, 255, 0, 0, 0, 0, 0, 182, 255, 159, 255, 255, 255, 255, 255,
+    255, 255, 255, 52, 86, 255, 255, 255, 29, 255, 255, 255, 118, 255,
+    0, 0, 44, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 255, 255, 255, 255, 255, 203, 255, 255, 255, 255, 255,
+    255, 117, 255, 255, 0, 0, 0, 6, 78, 0, 255, 255, 255, 255, 255,
+    255, 46, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 103, 255, 255, 255, 255, 255, 255, 127, 255,
+    79, 255, 181, 255, 59, 255, 255, 255, 255, 255, 255, 24, 255, 255,
+    255, 255, 255, 216, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 56, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 154, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 110,
+    255, 255, 255, 255, 255, 255, 64, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 69, 255, 255, 255,
+    255, 255, 255, 255, 156, 255, 0, 0, 49, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    0, 0, 0, 0, 0, 0, 0, 74, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 70, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    0, 0, 0, 255, 255, 255, 255, 255, 208, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 144, 255,
+    69, 255, 255, 255, 255, 255, 255, 179, 255, 255, 233, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 204, 255,
+    255, 255, 166, 255, 255, 255, 255, 255, 255, 255, 255, 81, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 173, 250, 255, 255, 255,
+    219, 255, 174, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 90, 255, 255, 255, 255, 120, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 133, 0, 0, 0, 255, 255, 255, 255, 255, 223, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0,
+    0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 69, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255,
+    121, 255, 94, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 64, 0, 0, 255, 255, 255, 40, 255, 255, 255, 255, 255, 0,
+    0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    0, 29, 0, 0, 0, 0, 0, 0, 121, 0, 157, 0, 0, 0, 0, 0, 0, 234, 142,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 67, 255,
+    255, 52, 255, 255, 0, 0, 0, 0, 0, 0, 139, 0, 0, 255, 255, 255, 0,
+    140, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 80, 255, 255,
+    255, 255, 255, 147, 255, 255, 255, 255, 255, 255, 255, 103, 98,
+    212, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 4, 255, 0, 0, 0, 176, 255, 255, 255, 255,
+    255, 255, 228, 104, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 84, 255, 255, 255, 170, 255, 255, 255,
+    255, 255, 255, 237, 255, 117, 255, 255, 0, 0, 0, 0, 0, 0, 255,
+    255, 11, 255, 255, 255, 255, 255, 199, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 0, 0, 0, 162, 111, 255, 15, 255, 255, 255, 255, 255,
+    0, 0, 0, 2, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 233, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 62, 0, 255, 255, 255, 255,
+    255, 81, 162, 255, 255, 255, 255, 255, 25, 196, 52, 255, 176, 255,
+    255, 207, 255, 255, 189, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255,
+    255, 255, 255, 196, 255, 255, 29, 255, 255, 146, 255, 255, 255,
+    255, 73, 255, 255, 191, 0, 0, 255, 255, 255, 255, 255, 255, 24,
+    255, 255, 255, 255, 255, 142, 255, 8, 255, 255, 9, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 161, 0, 0, 0, 0, 0,
+    0, 0, 0, 119, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 176, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 27, 255, 255, 255, 255, 255, 255, 255, 255, 239, 255, 255,
+    255, 255, 255, 255, 14, 255, 255, 91, 255, 255, 221, 255, 255,
+    255, 20, 255, 255, 255, 255, 255, 255, 18, 255, 236, 0, 153, 0,
+    34, 0, 0, 255, 255, 255, 255, 225, 255, 43, 255, 255, 255, 255,
+    255, 255, 255, 24, 0, 0, 74, 255, 255, 255, 255, 255, 255, 0, 0,
+    0, 255, 255, 247, 255, 255, 255, 255, 255, 11, 0, 0, 0, 255, 255,
+    17, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 98, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 252, 1, 255, 255, 255,
+    255, 255, 255, 255, 255, 149, 255, 255, 255, 255, 255, 255, 255,
+    213, 255, 255, 255, 255, 255, 86, 255, 255, 255, 0, 0, 73, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 212,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 24, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 166, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    0, 0, 0, 0, 0, 0, 255, 240, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 226, 0, 0, 0, 0, 0, 109, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 41, 165,
+    255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 213, 255, 255, 255,
+    255, 58, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 179, 0, 0, 255, 255,
+    255, 255, 255, 255, 112, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 5,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 169, 255, 255, 232,
+    255, 255, 255, 148, 255, 0, 0, 0, 4, 0, 0, 0, 0, 0, 206, 255, 255,
+    130, 255, 255, 0, 0, 250, 255, 255, 255, 105, 255, 255, 255, 255,
+    255, 207, 255, 255, 255, 255, 255, 255, 255, 119, 255, 255, 255,
+    255, 228, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 242,
+    255, 255, 255, 255, 146, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 249, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 54, 255,
+    255, 255, 255, 255, 255, 185, 255, 255, 255, 52, 255, 255, 0, 0,
+    0, 52, 0, 0, 171, 255, 255, 255, 255, 84, 255, 61, 212, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 61, 255, 255, 255, 255, 255,
+    255, 255, 234, 255, 41, 0, 229, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 223, 255, 255,
+    255, 255, 55, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 226, 74, 255, 255, 255, 255, 0, 0,
+    0, 123, 0, 0, 255, 255, 255, 255, 255, 255, 255, 32, 255, 255,
+    255, 9, 255, 255, 255, 255, 242, 169, 255, 255, 47, 255, 255, 56,
+    255, 203, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 49, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    22, 255, 141, 255, 255, 255, 255, 255, 255, 13, 255, 255, 255,
+    255, 255, 255, 255, 64, 255, 255, 236, 232, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 217, 255, 255, 255, 255, 142, 255,
+    255, 255, 255, 255, 255, 145, 255, 255, 255, 14, 255, 255, 255,
+    255, 255, 255, 22, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 53, 233, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 175, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 21, 255, 47, 255, 41, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 0, 0, 159, 0, 0, 0, 21, 255, 255, 193, 255, 255, 0, 104,
+    181, 255, 172, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    151, 255, 255, 255, 255, 255, 255, 171, 255, 255, 255, 138, 255,
+    255, 255, 195, 255, 255, 255, 255, 20, 255, 255, 255, 255, 255,
+    255, 255, 30, 255, 255, 255, 255, 208, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 67, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 185, 255, 255, 255, 72, 129, 255, 227,
+    255, 52, 255, 255, 255, 255, 255, 255, 156, 255, 59, 255, 125,
+    255, 139, 176, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 246, 255, 137, 255, 255, 255, 255, 238, 255, 255,
+    255, 135, 255, 255, 194, 59, 0, 0, 255, 255, 255, 21, 255, 42, 27,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0,
+    0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    34, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 206,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 0, 174, 61, 0, 0, 0, 255, 255, 255, 255, 196, 255,
+    255, 255, 255, 0, 135, 0, 255, 255, 255, 255, 255, 69, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 77, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 99, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 40, 137, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 181, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 79, 255, 255, 255, 255, 255, 255, 255, 35, 255, 255, 255,
+    193, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 11, 255, 255,
+    255, 255, 255, 255, 255, 20, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 231, 244, 0, 0, 36, 0, 0, 0,
+    255, 157, 255, 255, 255, 255, 210, 255, 255, 255, 255, 255, 255,
+    208, 255, 117, 0, 0, 0, 0, 0, 255, 255, 255, 120, 255, 255, 255,
+    255, 255, 0, 28, 0, 255, 255, 255, 255, 255, 255, 255, 241, 255,
+    255, 255, 255, 255, 255, 255, 255, 12, 255, 0, 50, 0, 255, 100,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 206,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 220, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 246, 255, 255,
+    255, 255, 255, 24, 0, 0, 0, 0, 139, 100, 255, 181, 255, 238, 61,
+    80, 3, 255, 255, 255, 255, 255, 255, 255, 255, 178, 106, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255,
+    255, 255, 255, 93, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    22, 162, 255, 255, 255, 255, 255, 255, 255, 255, 61, 255, 255,
+    255, 86, 255, 255, 114, 255, 255, 255, 255, 255, 255, 255, 255,
+    97, 255, 213, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 169, 255, 255, 255, 255, 255, 124, 255, 255, 255, 255,
+    255, 255, 255, 213, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 5, 255, 255, 255, 255, 255, 255, 255, 255, 255, 98, 255, 255,
+    255, 255, 160, 255, 255, 255, 0, 215, 0, 0, 0, 0, 255, 255, 115,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 53, 255, 255, 0, 0, 0, 255, 41, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 12, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 39, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 109, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 46, 255, 255,
+    255, 255, 255, 255, 255, 146, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 58, 255, 255, 255, 255,
+    255, 13, 255, 255, 255, 255, 147, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 22, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 166, 255, 255, 205, 255, 138, 255, 255, 255,
+    255, 255, 255, 255, 185, 255, 255, 253, 82, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 149, 255, 255, 255, 255, 255, 255,
+    255, 255, 209, 255, 231, 255, 255, 255, 11, 26, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 187, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 0, 232, 0, 255, 255, 255, 255, 255, 255, 255,
+    28, 255, 107, 255, 255, 255, 255, 255, 0, 0, 68, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 234, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 13, 255, 255, 255, 0, 0, 0, 0, 0,
+    67, 255, 255, 244, 255, 255, 255, 0, 0, 0, 255, 255, 37, 30, 255,
+    255, 255, 255, 255, 255, 255, 40, 255, 255, 255, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 187, 255, 244,
+    6, 255, 255, 255, 255, 255, 127, 213, 255, 255, 255, 19, 255, 63,
+    28, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 170, 255, 255, 245,
+    255, 255, 255, 108, 255, 255, 47, 255, 255, 255, 0, 191, 0, 0,
+    252, 0, 75, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 66, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 0, 0, 0, 240, 0, 0, 0, 0, 225, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, 0, 0, 247, 0, 0, 0, 0, 0, 212,
+    0, 0, 0, 0, 0, 0, 158, 0, 0, 0, 255, 255, 255, 255, 255, 209, 255,
+    255, 255, 255, 255, 1, 255, 255, 78, 255, 255, 171, 255, 107, 255,
+    0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 27, 255, 255, 255, 255, 255,
+    245, 255, 255, 246, 255, 146, 0, 0, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 33, 0, 0, 237, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 127, 243, 255, 255, 255, 255, 255, 0, 79,
+    0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0,
+    0, 0, 50, 255, 255, 255, 255, 255, 255, 169, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 116, 255, 255, 255, 95, 255, 27, 255,
+    255, 25, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 109, 177, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 65, 255, 255, 255, 0, 0,
+    0, 255, 255, 255, 255, 255, 255, 255, 106, 255, 255, 255, 255,
+    255, 255, 255, 225, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 236, 255, 83, 255, 255, 255, 255, 108, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 137, 255, 255,
+    255, 163, 255, 153, 255, 40, 255, 255, 255, 255, 255, 255, 255,
+    235, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 100,
+    255, 255, 255, 255, 255, 255, 255, 255, 197, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 31, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 237, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 11, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 182,
+    255, 255, 255, 0, 0, 0, 255, 255, 255, 231, 138, 255, 255, 209,
+    255, 255, 201, 194, 255, 255, 255, 255, 255, 255, 255, 22, 255,
+    238, 255, 255, 255, 255, 255, 255, 255, 255, 255, 248, 255, 255,
+    255, 236, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 151, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 212, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 120, 255, 92, 255, 255, 255, 116, 255,
+    255, 255, 255, 255, 220, 255, 255, 255, 255, 255, 255, 109, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 165, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 162, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 253, 255, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 195, 255, 255, 255, 255, 255, 255, 255,
+    29, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255,
+    255, 255, 0, 0, 26, 0, 0, 0, 255, 255, 255, 255, 255, 156, 255,
+    255, 255, 255, 255, 255, 204, 70, 255, 0, 93, 0, 0, 0, 0, 255,
+    255, 255, 183, 255, 255, 0, 0, 0, 255, 22, 255, 19, 255, 255, 43,
+    133, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 112, 255, 0, 0, 0, 0, 22, 0, 255, 79, 255,
+    255, 132, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    151, 0, 0, 0, 255, 255, 255, 255, 255, 255, 228, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 10, 0, 0, 0, 167, 0, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 221, 255, 255, 246, 255, 29, 255, 255, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 146,
+    255, 131, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 243, 255, 255, 255, 255, 255, 255, 255, 255,
+    0, 0, 0, 202, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 35, 0, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 83, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 10, 0, 0, 0,
+    205, 0, 255, 255, 255, 255, 255, 255, 210, 255, 139, 255, 255,
+    255, 0, 0, 0, 255, 255, 255, 146, 255, 255, 255, 255, 172, 255,
+    255, 255, 255, 255, 255, 214, 255, 255, 255, 255, 255, 20, 255,
+    255, 213, 255, 255, 255, 255, 255, 0, 166, 114, 255, 255, 255,
+    255, 255, 255, 255, 37, 255, 255, 255, 255, 255, 255, 255, 139,
+    255, 254, 255, 255, 102, 255, 255, 255, 255, 255, 101, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 210, 255, 255, 255, 255, 255, 187,
+    255, 255, 60, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    154, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 69, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 169, 255, 255, 255, 255, 255, 179, 255, 26, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 237, 255,
+    255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 145, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 78, 140, 199, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255,
+    142, 198, 255, 255, 255, 255, 151, 255, 255, 255, 255, 255, 237,
+    128, 85, 255, 133, 255, 255, 136, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 160, 255, 255, 255, 255, 255, 255, 255,
+    255, 186, 255, 255, 154, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 224, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 0, 167, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 139,
+    0, 0, 0, 0, 0, 0, 0, 162, 198, 0, 0, 0, 0, 0, 104, 143, 0, 0, 0,
+    0, 210, 251, 0, 0, 86, 255, 255, 255, 255, 24, 255, 255, 255, 101,
+    57, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 149,
+    47, 255, 43, 255, 255, 255, 255, 255, 88, 255, 255, 255, 255, 255,
+    0, 100, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 172, 255, 96, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 14, 255, 255, 0, 0,
+    0, 0, 0, 0, 255, 255, 255, 0, 119, 0, 0, 0, 0, 35, 255, 255, 255,
+    255, 177, 255, 255, 235, 248, 255, 255, 255, 255, 255, 0, 164, 0,
+    0, 0, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0,
+    0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 133, 255, 255, 255, 255,
+    255, 178, 255, 255, 255, 0, 0, 0, 0, 77, 0, 255, 255, 63, 255,
+    255, 255, 186, 255, 112, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 255, 255, 255, 255, 255, 47, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 145, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 68, 255, 255, 255,
+    255, 255, 104, 255, 255, 255, 255, 255, 30, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 0, 17, 0, 0, 75, 255, 255,
+    75, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0,
+    0, 91, 0, 0, 0, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255,
+    255, 255, 100, 255, 255, 255, 130, 255, 255, 255, 255, 183, 64,
+    255, 255, 255, 0, 0, 0, 255, 78, 255, 255, 255, 255, 188, 255,
+    255, 255, 255, 255, 255, 255, 186, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 10, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0,
+    0, 255, 255, 187, 255, 180, 255, 255, 255, 255, 0, 0, 0, 255, 255,
+    255, 143, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 133, 255, 255, 255, 64,
+    255, 255, 255, 255, 255, 72, 255, 255, 255, 255, 199, 222, 255,
+    255, 255, 255, 255, 255, 255, 126, 209, 255, 255, 255, 255, 255,
+    255, 255, 203, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 139, 255, 255, 255,
+    113, 255, 255, 255, 255, 255, 91, 255, 255, 87, 119, 255, 255,
+    255, 255, 243, 255, 70, 255, 255, 194, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255,
+    255, 54, 255, 255, 255, 255, 255, 255, 97, 255, 255, 255, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 193, 255, 3, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 25, 255, 255, 14, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 158, 86, 77,
+    255, 255, 255, 146, 70, 0, 0, 17, 0, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 244, 255,
+    255, 15, 255, 12, 255, 255, 255, 255, 255, 255, 241, 255, 255,
+    255, 255, 255, 176, 255, 44, 68, 255, 255, 255, 6, 255, 255, 255,
+    93, 255, 255, 255, 255, 255, 255, 255, 255, 186, 255, 43, 254,
+    255, 255, 255, 5, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 197, 255, 255, 111, 220,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 249, 255, 255, 255, 161, 255, 255, 255, 255, 255, 255,
+    255, 255, 64, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255,
+    255, 255, 255, 101, 255, 255, 255, 255, 255, 94, 255, 255, 255,
+    255, 255, 255, 255, 227, 0, 0, 0, 82, 0, 176, 169, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 0, 221, 0, 0, 0, 178, 255, 196,
+    255, 255, 255, 181, 0, 0, 0, 255, 255, 122, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 4, 147, 255, 255, 50, 0, 0, 0, 0, 0,
+    0, 123, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 121,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 66, 0, 0, 0, 122, 0,
+    255, 52, 255, 78, 255, 255, 255, 255, 255, 0, 0, 41, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 33, 255, 233, 255, 153, 255,
+    255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 103, 255, 255,
+    255, 255, 167, 243, 255, 255, 255, 255, 255, 0, 0, 0, 0, 136, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 26, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 255, 255, 255,
+    255, 255, 255, 255, 126, 255, 255, 255, 137, 255, 255, 255, 255,
+    179, 255, 255, 255, 255, 255, 228, 255, 167, 255, 255, 255, 255,
+    255, 0, 0, 0, 255, 255, 255, 255, 255, 189, 255, 255, 255, 255,
+    255, 255, 255, 72, 255, 255, 255, 255, 255, 255, 255, 144, 255,
+    255, 255, 255, 255, 148, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 103, 0, 255, 255, 255,
+    255, 255, 255, 255, 122, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255,
+    255, 126, 255, 255, 255, 255, 255, 255, 112, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 125, 255, 255, 255, 255, 255, 255,
+    255, 255, 230, 0, 0, 0, 0, 0, 30, 151, 255, 255, 255, 255, 255,
+    255, 255, 240, 255, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255,
+    255, 255, 255, 200, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 0, 0, 175, 0, 0, 41, 255, 255, 255, 220, 255, 137, 255, 255,
+    255, 255, 255, 91, 255, 255, 102, 255, 255, 255, 0, 0, 0, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 212, 255, 255, 6,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 46,
+    255, 255, 255, 129, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    138, 255, 255, 255, 255, 206, 255, 255, 255, 255, 255, 255, 255,
+    227, 255, 255, 255, 255, 255, 255, 255, 170, 255, 255, 255, 255,
+    255, 255, 255, 255, 20, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 147, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0,
+    0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    31, 255, 255, 0, 0, 0, 255, 79, 255, 255, 255, 224, 255, 255, 255,
+    217, 255, 255, 255, 255, 255, 253, 255, 255, 255, 191, 255, 255,
+    255, 255, 255, 255, 255, 0, 0, 25, 255, 209, 255, 255, 255, 255,
+    0, 0, 0, 255, 255, 7, 255, 255, 255, 0, 0, 244, 0, 0, 0, 255, 255,
+    255, 255, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    0, 91, 0, 255, 255, 255, 113, 255, 255, 255, 200, 129, 0, 0, 76,
+    255, 149, 255, 255, 255, 255, 154, 255, 255, 175, 217, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230, 255, 255,
+    255, 255, 255, 255, 20, 255, 255, 255, 255, 255, 255, 148, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 201, 255,
+    255, 255, 255, 255, 255, 229, 255, 255, 255, 255, 255, 82, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254,
+    255, 255, 255, 255, 255, 255, 128, 255, 255, 255, 255, 255, 255,
+    255, 255, 163, 255, 0, 0, 0, 255, 255, 255, 255, 195, 255, 255,
+    255, 255, 193, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 0, 0, 0, 0, 0, 0, 255, 133, 210, 66, 255, 255, 0, 0, 0, 0, 0,
+    0, 185, 102, 255, 179, 255, 255, 255, 255, 255, 255, 255, 255, 0,
+    0, 1, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 130, 0, 181, 44, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 175,
+    255, 255, 255, 255, 255, 0, 0, 0, 27, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 134, 255, 0, 0, 230, 255, 255, 255, 255, 255, 255,
+    0, 0, 0, 0, 132, 0, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0,
+    0, 10, 255, 255, 255, 255, 255, 255, 255, 203, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 80, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 205, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 240, 255, 255, 255,
+    255, 255, 255, 255, 172, 161, 255, 255, 0, 0, 0, 0, 0, 0, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 43, 0, 0, 255, 6,
+    255, 255, 255, 255, 0, 20, 0, 255, 255, 255, 255, 255, 255, 53, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 191, 214,
+    255, 255, 255, 47, 255, 255, 255, 209, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255,
+    93, 255, 255, 255, 70, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 255, 177, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 4, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 90, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 238, 255, 106, 230, 255, 65, 255, 255,
+    255, 255, 255, 255, 255, 255, 240, 255, 255, 255, 255, 255, 255,
+    109, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 126, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 219, 255, 0, 0, 0, 255, 177,
+    255, 255, 255, 255, 255, 122, 255, 255, 255, 255, 0, 0, 0, 131,
+    255, 255, 255, 255, 47, 255, 255, 255, 170, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 253, 0, 0, 45, 92, 0, 0, 0, 217, 0, 0, 0, 0, 0,
+    0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 15, 255, 255, 255, 0, 0, 0, 0, 0, 0,
+    255, 255, 255, 0, 46, 151, 255, 255, 255, 255, 255, 255, 255, 255,
+    201, 255, 255, 255, 255, 255, 255, 255, 90, 214, 255, 71, 255,
+    255, 215, 130, 255, 255, 255, 255, 255, 255, 255, 255, 241, 255,
+    7, 255, 255, 255, 255, 255, 255, 255, 255, 187, 255, 255, 255,
+    225, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 68,
+    222, 255, 255, 255, 255, 255, 255, 255, 255, 255, 146, 255, 255,
+    255, 255, 255, 255, 54, 255, 70, 255, 255, 255, 255, 151, 255,
+    255, 158, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 123, 0, 0, 20, 0, 0, 0,
+    10, 0, 0, 110, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 140, 55, 0, 78, 219, 0, 0, 0, 0, 0, 98, 0, 0, 0,
+    202, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 95, 255, 180, 255, 255, 235, 255, 164, 255, 79, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 234, 0, 0, 29, 0, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 0, 0, 0, 0, 179, 0, 0, 0, 0, 0, 0, 0,
+    255, 255, 255, 255, 255, 45, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 20, 0, 0, 0,
+    0, 0, 0, 93, 0, 0, 51, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    209, 255, 235, 255, 255, 255, 255, 255, 255, 255, 2, 255, 255,
+    121, 255, 255, 255, 255, 189, 255, 255, 255, 255, 255, 255, 3,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 158,
+    255, 255, 255, 255, 255, 255, 255, 200, 255, 255, 255, 255, 255,
+    255, 255, 255, 232, 255, 255, 255, 255, 255, 255, 255, 183, 255,
+    255, 255, 255, 255, 255, 255, 69, 255, 178, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 158, 0, 53, 0, 0, 0, 0, 0,
+    0, 255, 255, 241, 255, 255, 255, 255, 255, 149, 184, 255, 255, 99,
+    0, 17, 255, 255, 141, 255, 255, 255, 255, 152, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 109, 255,
+    255, 255, 255, 180, 255, 255, 78, 255, 255, 255, 53, 255, 255,
+    255, 255, 105, 1, 0, 0, 0, 255, 25, 255, 255, 152, 255, 255, 255,
+    82, 255, 255, 255, 255, 255, 255, 255, 255, 255, 167, 255, 255,
+    255, 255, 255, 255, 255, 255, 149, 255, 23, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 53, 255, 255, 255,
+    255, 148, 255, 255, 255, 255, 255, 255, 255, 255, 191, 255, 255,
+    0, 85, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96,
+    255, 255, 255, 255, 78, 255, 255, 255, 255, 255, 255, 108, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 150, 255, 255, 106,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 137, 255, 255, 255, 229, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 214, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 58, 255, 255, 255, 255, 20, 255, 255, 255,
+    255, 255, 255, 255, 255, 5, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 191, 236, 255, 255,
+    85, 255, 200, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 45, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 247, 255, 142, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 253, 14, 255, 255, 255, 255, 72,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 144, 255, 255, 255, 5, 255, 255, 255, 255, 255, 85, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 72, 255, 211, 255,
+    255, 255, 0, 255, 255, 255, 255, 255, 223, 15, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 173, 255, 255, 255, 255,
+    255, 255, 136, 255, 255, 255, 40, 36, 255, 255, 255, 86, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 58, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 151, 255, 255,
+    255, 255, 255, 124, 255, 255, 255, 255, 255, 255, 255, 255, 156,
+    24, 255, 255, 255, 255, 255, 255, 255, 43, 124, 255, 255, 255,
+    255, 255, 80, 255, 13, 255, 255, 255, 255, 236, 255, 255, 255,
+    247, 255, 255, 255, 104, 255, 255, 255, 255, 255, 255, 200, 255,
+    255, 255, 249, 255, 96, 255, 255, 255, 255, 255, 255, 255, 255,
+    80, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 1, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 209, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 16, 165, 255, 255,
+    255, 255, 255, 255, 220, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 95, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 177, 255, 255,
+    255, 255, 255, 255, 31, 255, 255, 255, 255, 64, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 128,
+    255, 28, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 234, 255, 255, 255, 255, 255, 0, 0,
+    0, 255, 255, 255, 101, 255, 255, 255, 255, 255, 255, 255, 255,
+    170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 160, 255, 0, 0, 155, 0, 0, 0, 255, 255, 255, 255, 255,
+    171, 92, 255, 255, 255, 247, 255, 255, 255, 255, 8, 178, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 107, 255,
+    255, 255, 255, 255, 219, 255, 210, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    0, 255, 122, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 35, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 17, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 192, 255, 255, 255, 255, 255,
+    255, 184, 255, 255, 255, 255, 255, 255, 144, 255, 255, 255, 152,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 52, 0, 0, 0, 0, 0, 0, 255, 207, 255, 255, 255,
+    255, 255, 255, 255, 0, 0, 0, 255, 110, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 225, 255, 213, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 80, 241, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 137, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 220, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    0, 0, 93, 0, 255, 255, 255, 255, 255, 255, 105, 255, 193, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 45, 255, 255, 8,
+    255, 255, 143, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 52, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 142, 89, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 149, 116, 255, 220, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 110, 255, 255, 255, 255, 255, 255, 17, 191,
+    255, 255, 255, 255, 255, 255, 255, 255, 158, 255, 255, 47, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 88, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 24, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 243, 13, 255, 255, 255,
+    255, 176, 111, 255, 255, 255, 255, 255, 153, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    230, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    134, 255, 255, 255, 74, 255, 199, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 135, 255, 255, 255, 255, 255,
+    255, 255, 139, 5, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 216, 255, 255, 0, 0, 22, 255, 255, 104, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 178, 255, 255, 255, 255, 250, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    26, 255, 255, 59, 255, 255, 255, 255, 255, 255, 119, 255, 255, 0,
+    0, 0, 255, 191, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 221, 255, 117, 255, 255, 255, 255, 255,
+    19, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 200, 144, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255,
+    255, 129, 255, 255, 255, 19, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 111, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 76, 255, 255, 255, 255, 229, 255, 211, 255, 192,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0,
+    255, 255, 255, 255, 255, 110, 255, 255, 84, 255, 255, 255, 211,
+    57, 255, 255, 86, 255, 255, 2, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 142, 255, 255, 255, 255, 255, 255, 92,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 148, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 20, 255, 255, 255, 255,
+    255, 255, 255, 255, 15, 255, 255, 255, 14, 160, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 0, 0, 0, 255, 85, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 192, 255, 117, 255, 255, 255, 255, 255, 255, 255, 40,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 137, 0, 0,
+    0, 0, 0, 255, 142, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 22, 255, 255, 255, 157, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 191, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 241, 255, 255,
+    191, 255, 255, 25, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 182, 255, 255, 255, 255, 255, 120, 255, 255, 255, 255, 255,
+    64, 255, 255, 255, 255, 255, 34, 255, 125, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 107, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 53,
+    166, 255, 255, 255, 255, 255, 255, 135, 255, 71, 255, 49, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 58, 255, 255, 255, 255, 255, 117, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255,
+    255, 11, 255, 255, 255, 255, 255, 255, 255, 255, 162, 255, 175,
+    255, 255, 255, 255, 255, 255, 88, 255, 255, 255, 151, 255, 255,
+    255, 255, 72, 255, 255, 255, 91, 255, 255, 255, 184, 255, 255,
+    255, 255, 255, 255, 255, 135, 255, 175, 255, 255, 255, 255, 255,
+    255, 255, 255, 36, 255, 255, 255, 255, 255, 255, 255, 255, 88,
+    255, 255, 165, 255, 255, 255, 255, 1, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 76, 255, 255, 28, 255, 255, 255, 181, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 122, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 232, 255, 255, 208, 255, 167, 255, 147, 255, 255, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 118, 255, 255,
+    80, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    253, 255, 255, 255, 255, 255, 255, 66, 255, 12, 123, 255, 241,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 112, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 107, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0,
+    0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 148, 255, 255, 255, 44, 255, 255, 106, 255, 164, 255,
+    255, 255, 36, 255, 255, 255, 255, 255, 255, 255, 255, 255, 34,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 222, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 121, 255, 46, 244, 255, 255, 255, 255,
+    51, 255, 255, 255, 255, 255, 135, 99, 7, 116, 255, 255, 255, 255,
+    255, 255, 255, 255, 160, 255, 255, 255, 255, 255, 0, 207, 0, 0, 0,
+    0, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 171, 20, 255, 255, 255, 66, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 55, 255, 133, 132, 0, 255, 255,
+    155, 255, 255, 255, 0, 0, 100, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 143, 255, 0, 0, 0, 255, 255, 255, 255,
+    255, 255, 0, 104, 0, 255, 255, 255, 255, 255, 255, 168, 255, 255,
+    255, 255, 255, 255, 255, 192, 255, 255, 255, 255, 255, 255, 159,
+    255, 255, 255, 255, 255, 255, 26, 218, 121, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 57, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 196, 255, 157, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 94, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 50, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 6, 255, 255, 255, 255, 255, 65, 255, 255, 255,
+    255, 255, 255, 255, 255, 79, 255, 255, 255, 255, 255, 255, 255,
+    255, 185, 243, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    9, 255, 107, 255, 255, 255, 255, 73, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 13, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 158, 255, 255, 84,
+    180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    31, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 173, 255, 255, 255, 255, 137, 255, 255, 86, 13,
+    255, 255, 255, 255, 255, 255, 255, 255, 122, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 166, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 104, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 233, 255, 255, 104,
+    255, 255, 35, 255, 255, 255, 255, 255, 255, 48, 255, 255, 255,
+    255, 193, 255, 255, 255, 255, 255, 255, 255, 255, 175, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 211, 255, 255, 42, 255, 255, 255, 255, 255, 255,
+    149, 255, 255, 255, 255, 230, 255, 255, 255, 255, 255, 255, 255,
+    1, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 79, 255, 255, 255, 255, 255, 255, 255, 166, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    0, 0, 0, 66, 255, 255, 255, 255, 255, 255, 255, 186, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 207, 255, 7, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 154, 255, 218, 167,
+    0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 4, 255,
+    255, 255, 255, 255, 255, 121, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 0, 255, 255, 255, 255, 255, 255, 123, 255, 171, 255,
+    255, 175, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 171, 255, 255, 140, 56, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 66, 255, 255, 255, 255,
+    255, 198, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 0, 36, 0, 0, 0, 0, 255, 255, 255, 0, 160, 152, 255, 255, 255,
+    255, 255, 255, 255, 255, 40, 220, 255, 255, 73, 255, 255, 255,
+    180, 255, 255, 255, 51, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 66, 255,
+    206, 255, 255, 255, 255, 255, 255, 255, 222, 255, 93, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 15, 255, 255, 255, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 47, 36, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 165, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 185, 255, 255, 255, 49, 232, 255, 255, 255, 190, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 187, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 175, 255, 255,
+    255, 255, 255, 152, 61, 255, 255, 45, 153, 255, 255, 255, 255, 38,
+    236, 255, 255, 255, 255, 249, 255, 255, 255, 255, 255, 207, 255,
+    67, 255, 255, 255, 255, 255, 175, 255, 255, 255, 255, 255, 255,
+    253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    53, 158, 255, 255, 255, 255, 255, 71, 103, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 177, 255, 255, 255, 255, 125,
+    34, 255, 191, 255, 255, 58, 255, 255, 219, 255, 255, 255, 255,
+    255, 255, 255, 255, 88, 167, 255, 255, 8, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 37, 255, 255,
+    255, 255, 37, 112, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 104, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 253, 255, 255, 255, 255, 255, 255, 77, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 124, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 134, 255, 255, 255, 255, 255, 255,
+    255, 240, 255, 255, 255, 255, 255, 255, 255, 170, 255, 255, 255,
+    255, 89, 255, 196, 255, 255, 255, 255, 255, 43, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 79, 255, 255,
+    255, 255, 255, 239, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 187, 255, 255, 255, 255, 255, 255, 255, 255, 202,
+    255, 255, 255, 255, 255, 105, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 127, 255, 255, 255, 255, 255, 255, 191, 255, 255,
+    255, 255, 255, 255, 255, 196, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 211, 255, 255, 255, 177, 255, 0, 0, 0, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 235, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 140, 255, 255, 255, 255, 255, 153, 255, 255, 255, 255,
+    255, 0, 221, 0, 255, 244, 255, 255, 255, 255, 255, 255, 129, 255,
+    255, 255, 255, 247, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 234, 255, 255, 255, 174, 125, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 34, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 118, 255, 176, 255, 255, 255, 255, 136, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    174, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 152, 255, 15, 255, 255, 255, 46, 143, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 0, 0, 228, 0, 0, 0, 0, 153, 0, 0, 0,
+    0, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 243, 21, 255, 255, 255, 255, 255, 255, 255, 73, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 47, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0,
+    0, 28, 32, 255, 255, 255, 255, 255, 145, 255, 255, 255, 255, 255,
+    255, 255, 0, 0, 0, 0, 0, 0, 255, 255, 255, 126, 255, 255, 255,
+    255, 255, 241, 255, 255, 255, 255, 255, 255, 255, 255, 255, 2,
+    255, 255, 255, 255, 255, 255, 255, 171, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 241, 255, 255, 239, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 251, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 255, 255, 255,
+    255, 255, 35, 255, 255, 255, 255, 255, 255, 255, 163, 255, 255,
+    255, 127, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 57, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    243, 255, 49, 255, 255, 255, 255, 255, 255, 44, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    5, 255, 255, 151, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 216, 255, 237,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 118, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 96, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 153, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    63, 255, 255, 23, 255, 145, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 252, 255, 255, 255, 255, 255, 255, 255, 63,
+    255, 255, 255, 255, 123, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 32, 255, 255, 108, 11,
+    134, 16, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 136, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 100, 255, 17, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 233,
+    255, 255, 217, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 114, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 204, 255, 255, 255, 255, 255, 255, 149, 255, 255, 255,
+    255, 211, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    12, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 123, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 114, 234, 255, 255, 255, 56, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 129, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 197,
+    255, 255, 255, 255, 255, 255, 255, 75, 255, 231, 255, 40, 255,
+    255, 255, 255, 255, 163, 255, 255, 255, 255, 255, 255, 90, 255,
+    159, 255, 255, 255, 255, 255, 255, 255, 255, 137, 255, 255, 255,
+    255, 65, 255, 255, 255, 255, 255, 255, 255, 255, 142, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 182, 44,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 147, 255,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 194, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 146, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 6, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 90, 8, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 61, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 101, 255, 255, 255,
+    255, 221, 255, 255, 255, 255, 255, 133, 255, 255, 255, 255, 255,
+    59, 255, 255, 255, 255, 68, 255, 255, 201, 115, 255, 255, 255,
+    145, 255, 255, 255, 255, 238, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 126, 255, 255, 255, 190, 255, 255, 255,
+    255, 255, 255, 255, 185, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 84, 255, 161, 255, 255, 255, 255, 255, 3, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 9, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    192, 52, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 90, 165, 255, 253, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 114, 229, 255, 255, 255, 152, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 98, 255, 255, 255, 255, 255,
+    255, 255, 255, 183, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 232, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 89,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 30, 255, 255, 255,
+    255, 255, 255, 94, 255, 255, 255, 255, 255, 255, 225, 255, 255,
+    255, 157, 255, 255, 255, 255, 152, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 230,
+    255, 154, 255, 255, 255, 213, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 142, 255, 53, 255, 59, 255, 184, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 91,
+    255, 255, 255, 24, 255, 255, 17, 255, 255, 8, 255, 255, 255, 255,
+    255, 255, 255, 255, 180, 255, 255, 255, 255, 255, 255, 1, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 70, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 58, 255, 60, 255, 255, 255,
+    199, 255, 255, 255, 79, 241, 255, 221, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 44, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 104, 255, 255, 255, 255, 255, 255, 255,
+    240, 255, 255, 255, 255, 29, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 71, 255, 78, 255, 255, 247, 255, 255,
+    255, 233, 255, 255, 255, 88, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 90, 255, 255, 255, 255, 170, 230, 255, 255, 255, 255,
+    255, 139, 152, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 184, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 191, 125, 255, 255, 255,
+    255, 255, 255, 255, 253, 255, 113, 255, 237, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 232, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 60, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 41, 255, 255, 255, 255,
+    255, 255, 110, 124, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 53, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0,
+    0, 0, 255, 255, 255, 255, 252, 255, 255, 212, 255, 255, 255, 255,
+    255, 61, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 102, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 41, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 77, 255, 255, 255, 255, 255,
+    255, 255, 69, 52, 1, 255, 255, 255, 233, 255, 12, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 181, 255,
+    255, 160, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 61, 255, 255, 188, 255, 255, 198, 255, 255, 222, 255,
+    255, 255, 255, 255, 6, 255, 255, 255, 255, 195, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 154, 255, 255, 255, 255, 178, 255,
+    34, 104, 148, 255, 255, 114, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 34, 255, 255, 12, 255, 185, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 245, 255, 206, 255, 255, 255, 255, 87,
+    255, 255, 255, 255, 255, 13, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 180, 186, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 154, 255, 255, 255, 255, 255, 168, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 51, 255, 255, 255, 255, 255,
+    66, 255, 255, 255, 255, 194, 255, 208, 255, 255, 255, 68, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 35, 89, 255, 255, 255, 74, 222, 160, 15, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 231, 121,
+    255, 255, 255, 255, 121, 255, 255, 255, 255, 255, 255, 209, 255,
+    255, 255, 241, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    170, 255, 255, 255, 255, 255, 255, 255, 255, 255, 135, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    249, 255, 255, 255, 255, 255, 76, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 236, 255, 122, 255, 255, 255, 255, 255, 255, 255,
+    206, 255, 255, 255, 255, 255, 255, 255, 255, 105, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 113, 255, 255, 216, 255,
+    255, 255, 61, 255, 255, 255, 144, 255, 28, 255, 255, 255, 255,
+    105, 29, 255, 255, 255, 255, 153, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 1, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 113, 255, 255, 255, 255, 255,
+    255, 255, 255, 45, 255, 255, 255, 255, 0, 255, 255, 255, 255, 175,
+    255, 255, 255, 255, 255, 255, 255, 255, 158, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 90, 255, 255, 255, 255, 255, 120, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 144, 255, 255,
+    255, 255, 134, 255, 255, 255, 88, 255, 255, 255, 255, 255, 242,
+    206, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 167, 255, 255, 255, 255, 255, 255,
+    10, 255, 255, 255, 255, 50, 255, 255, 176, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    44, 255, 255, 175, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 158, 255, 255, 255, 255, 97, 255, 255, 255,
+    32, 255, 255, 255, 82, 255, 33, 0, 0, 0, 0, 0, 186, 255, 255, 255,
+    100, 1, 255, 255, 255, 255, 255, 255, 255, 253, 101, 255, 212,
+    255, 37, 255, 255, 255, 255, 255, 255, 191, 255, 255, 18, 255,
+    255, 255, 255, 197, 255, 3, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 27, 255, 251, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 185, 255,
+    255, 102, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 232, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 99, 255, 255, 255, 255, 255, 255, 245, 255, 255, 255,
+    89, 255, 255, 255, 255, 255, 255, 255, 255, 255, 212, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 123, 255, 255, 255, 255, 108, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 105, 136, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 17, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 85, 255, 255, 255, 255, 156, 255, 255, 255,
+    255, 255, 255, 255, 75, 255, 255, 255, 255, 255, 255, 255, 158,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 160, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 195, 255, 255, 255, 251, 255, 255, 255, 255, 255, 255, 255,
+    255, 27, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 190, 255, 255, 255, 255, 255, 255, 255, 255, 255, 50,
+    255, 255, 255, 88, 255, 255, 255, 255, 255, 255, 255, 137, 255,
+    255, 255, 255, 255, 255, 232, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 235, 255, 255, 255, 255, 144, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 139, 255, 255, 255, 255, 122,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 24, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 241, 255, 233, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 106, 90, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 29, 255,
+    244, 251, 255, 255, 255, 255, 200, 255, 77, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 240, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 79, 255, 255, 255, 255, 255, 255, 255, 177, 255, 255, 255,
+    255, 255, 255, 255, 13, 233, 3, 135, 255, 255, 255, 255, 255, 16,
+    57, 255, 255, 255, 230, 255, 255, 255, 255, 188, 255, 255, 255,
+    112, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 57,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 168,
+    237, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 22, 255, 255, 255, 32, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 163, 255, 255, 255, 255, 255,
+    236, 255, 255, 255, 201, 167, 255, 255, 255, 255, 190, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 86, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 139, 255, 255, 41, 255, 43, 203,
+    180, 255, 255, 255, 255, 255, 255, 255, 255, 162, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 152,
+    255, 255, 255, 255, 255, 255, 220, 255, 255, 255, 255, 212, 255,
+    255, 255, 255, 255, 255, 255, 58, 255, 255, 255, 255, 255, 255,
+    15, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 250, 255,
+    255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 124, 255, 255, 255, 255,
+    255, 255, 49, 255, 255, 255, 255, 255, 191, 255, 255, 255, 39,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 102,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 107, 255, 255, 193, 255, 255, 255, 44, 255, 255, 8,
+    255, 255, 0, 215, 252, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 153, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 179, 255, 255,
+    255, 255, 255, 255, 255, 204, 255, 255, 47, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 253, 255, 255, 255,
+    255, 255, 24, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 199, 154, 255, 7, 255, 73, 255, 106,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 218, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 212, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 185, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 177, 255,
+    177, 255, 255, 255, 255, 255, 255, 255, 255, 255, 178, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 237, 255,
+    227, 255, 255, 255, 255, 255, 255, 255, 227, 255, 255, 82, 172,
+    255, 255, 255, 255, 255, 241, 255, 255, 128, 255, 255, 66, 54,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 49, 255, 255, 255, 255, 255, 148, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 236, 255, 255, 255, 255, 255, 255, 255,
+    80, 255, 255, 53, 255, 236, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 209, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    137, 148, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 147, 115, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    71, 255, 255, 255, 255, 255, 255, 255, 255, 255, 54, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 28, 255, 255, 255, 255, 255, 255,
+    255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
+};
+
+  
+static unsigned char const valid_ppm_1[] = {    
+    80, 54, 35, 102, 111, 111, 10, 35, 102, 111, 111, 10, 49, 48, 32,
+    49, 48, 35, 102, 111, 111, 10, 32, 9, 35, 102, 111, 111, 32, 52,
+    52, 10, 50, 53, 53, 10, 32, 32, 32, 32, 32, 32, 120, 120, 120,
+    120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120,
+    120, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 120, 120,
+    120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120,
+    120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120,
+    32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32,
+    32, 32, 32, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
+    120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32,
+    32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32,
+    32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+    32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120,
+    120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120,
+    120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120,
+    120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120,
+    120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32,
+    32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32,
+    32, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32,
+    32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32,
+    32, 10 
+};
+
+static unsigned char const valid_ppm_2[] = {
+    80, 54, 10, 35, 102, 111, 111, 10, 49, 48, 32, 49, 48, 10, 50, 53,
+    53, 10, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32,
+    32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32,
+    32, 32, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32,
+    32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32,
+    32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120,
+    120, 120, 120, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32,
+    32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120,
+    120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120,
+    120, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 120, 120,
+    120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120,
+    120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120,
+    32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32,
+    32, 32, 32, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
+    120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32,
+    32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32,
+    32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+    32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 10, 80, 54, 10,
+    35, 102, 111, 111, 10, 49, 48, 32, 49, 48, 10, 50, 53, 53, 10, 97,
+    97, 97, 97, 97, 97, 88, 88, 88, 88, 88, 88, 97, 97, 97, 97, 97,
+    97, 88, 88, 88, 88, 88, 88, 97, 97, 97, 97, 97, 97, 97, 97, 97,
+    97, 97, 97, 88, 88, 88, 88, 88, 88, 97, 97, 97, 97, 97, 97, 88,
+    88, 88, 88, 88, 88, 97, 97, 97, 97, 97, 97, 88, 88, 88, 88, 88,
+    88, 97, 97, 97, 97, 97, 97, 88, 88, 88, 88, 88, 88, 97, 97, 97,
+    97, 97, 97, 88, 88, 88, 88, 88, 88, 88, 88, 88, 88, 88, 88, 97,
+    97, 97, 97, 97, 97, 88, 88, 88, 88, 88, 88, 97, 97, 97, 97, 97,
+    97, 88, 88, 88, 88, 88, 88, 97, 97, 97, 97, 97, 97, 88, 88, 88,
+    88, 88, 88, 97, 97, 97, 97, 97, 97, 88, 88, 88, 88, 88, 88, 97,
+    97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 88, 88, 88, 88, 88,
+    88, 97, 97, 97, 97, 97, 97, 88, 88, 88, 88, 88, 88, 97, 97, 97,
+    97, 97, 97, 88, 88, 88, 88, 88, 88, 97, 97, 97, 97, 97, 97, 88,
+    88, 88, 88, 88, 88, 97, 97, 97, 97, 97, 97, 88, 88, 88, 88, 88,
+    88, 88, 88, 88, 88, 88, 88, 97, 97, 97, 97, 97, 97, 88, 88, 88,
+    88, 88, 88, 97, 97, 97, 97, 97, 97, 88, 88, 88, 88, 88, 88, 97,
+    97, 97, 97, 97, 97, 88, 88, 88, 88, 88, 88, 97, 97, 97, 97, 97,
+    97, 88, 88, 88, 88, 88, 88, 97, 97, 97, 97, 97, 97, 97, 97, 97,
+    97, 97, 97, 88, 88, 88, 88, 88, 88, 97, 97, 97, 97, 97, 97, 88,
+    88, 88, 88, 88, 88, 97, 97, 97, 97, 97, 97, 10, 10 
+};
+
+static unsigned char const valid_ppm_3[] = {
+    80, 54, 10, 56, 32, 56, 10, 54, 53, 53, 51, 53, 10, 32, 32, 32,
+    32, 32, 32, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120,
+    120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+    32, 32, 32, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
+    120, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 120, 120,
+    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32,
+    32, 32, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 120,
+    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
+    120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+    32, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
+    32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 120, 120, 120,
+    120, 120, 120, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32,
+    32, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+    32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 120, 120,
+    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32,
+    32, 32, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+    32, 32, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
+    120, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 120, 120,
+    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
+    120, 120, 120, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32,
+    32, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+    32, 32, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
+    120, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 120, 120,
+    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32,
+    32, 32, 32, 32, 32, 32, 32, 32, 10, 10 
+};
+
+static unsigned char const valid_ppm_4[] = {
+    80, 51, 10, 49, 48, 32, 49, 48, 10, 50, 53, 53, 10, 32, 51, 50,
+    32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50,
+    32, 32, 51, 50, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48,
+    32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 32, 51, 50,
+    32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50,
+    10, 32, 51, 50, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48,
+    32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 32, 51, 50,
+    32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50,
+    32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50,
+    32, 32, 51, 50, 10, 32, 51, 50, 32, 32, 51, 50, 32, 49, 50, 48,
+    32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48,
+    32, 49, 50, 48, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50,
+    32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 49, 50, 48,
+    32, 49, 50, 48, 32, 49, 50, 48, 10, 49, 50, 48, 32, 49, 50, 48,
+    32, 49, 50, 48, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50,
+    32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 49, 50, 48,
+    32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48,
+    32, 49, 50, 48, 32, 32, 51, 50, 32, 32, 51, 50, 10, 32, 51, 50,
+    32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 49, 50, 48,
+    32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48,
+    32, 49, 50, 48, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50,
+    32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 49, 50, 48,
+    10, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48,
+    32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48,
+    32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 32, 51, 50,
+    32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50,
+    32, 32, 51, 50, 10, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48,
+    32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 32, 51, 50,
+    32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50,
+    32, 32, 51, 50, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48,
+    32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 10, 51, 50, 32,
+    32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32,
+    32, 51, 50, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32,
+    49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 32, 51, 50, 32,
+    32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32,
+    32, 51, 50, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32,
+    49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 32, 51, 50, 32,
+    32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32,
+    32, 51, 50, 10, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32,
+    51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 49, 50, 48, 32, 49,
+    50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49,
+    50, 48, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32,
+    51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 49, 50, 48, 32, 49,
+    50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49,
+    50, 48, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32,
+    51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 10, 49, 50, 48, 32, 49,
+    50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49,
+    50, 48, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51,
+    50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 49, 50, 48, 32, 49, 50,
+    48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50,
+    48, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51,
+    50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 49, 50, 48, 32, 49, 50,
+    48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50,
+    48, 10, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50,
+    48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 51, 50, 32, 32, 51, 50,
+    32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50,
+    32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48,
+    32, 49, 50, 48, 32, 49, 50, 48, 32, 32, 51, 50, 32, 32, 51, 50,
+    32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50,
+    32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48,
+    32, 49, 50, 48, 32, 49, 50, 48, 10, 51, 50, 32, 32, 51, 50, 32,
+    32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32,
+    49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32,
+    49, 50, 48, 32, 49, 50, 48, 32, 32, 51, 50, 32, 32, 51, 50, 32,
+    32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32,
+    49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32,
+    49, 50, 48, 32, 49, 50, 48, 32, 32, 51, 50, 32, 32, 51, 50, 32,
+    32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 10,
+    51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32,
+    51, 50, 32, 32, 51, 50, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49,
+    50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 32,
+    51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32,
+    51, 50, 32, 32, 51, 50, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49,
+    50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 49, 50, 48, 32, 32,
+    51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32, 51, 50, 32, 32,
+    51, 50, 32, 32, 51, 50, 10, 10 
+};
+
+static unsigned char const invalid_ppm_1[] = {
+    80, 54, 10, 49, 48, 32, 49, 48, 10, 50, 53, 53, 35, 10, 120, 120,
+    120, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32,
+    32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 32, 32,
+    32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 10 
+};
+
+static unsigned char const invalid_ppm_2[] = {
+    80, 54, 32, 10, 49, 48, 32, 49, 48, 10, 50, 53, 53, 35, 10, 120,
+    120, 120, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32,
+    32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32,
+    32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32,
+    32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32,
+    120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120,
+    120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120,
+    120, 120, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32,
+    120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120,
+    120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120,
+    120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120,
+    32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 120, 120, 120,
+    120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120,
+    120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32,
+    32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32,
+    32, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 120,
+    32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32,
+    32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32,
+    120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120,
+    120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+    32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 10 
+};
+
+static unsigned char invalid_ppm_3[] = {
+     80, 54, 10, 49, 48, 32, 49, 48, 10, 49, 48, 48, 48, 48, 48, 48,
+     32, 10, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32,
+     32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32,
+     32, 32, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32,
+     32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32,
+     32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32,
+     120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120,
+     120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32,
+     32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32,
+     120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120,
+     120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120,
+     120, 120, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 120,
+     120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120,
+     120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120,
+     120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32,
+     32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 120, 120, 120,
+     120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120,
+     120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32,
+     32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32,
+     32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 32,
+     32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32,
+     32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 10
+};
+
+static unsigned char const invalid_ppm_4[] = {
+    80, 54, 32, 10, 49, 48, 32, 49, 48, 10, 49, 48, 10, 32, 32, 32,
+    32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32,
+    120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+    32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32,
+    120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120,
+    120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120,
+    120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120,
+    120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120,
+    120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120,
+    120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120,
+    32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32,
+    32, 32, 32, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120,
+    32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32,
+    32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32,
+    120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120,
+    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32,
+    32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120,
+    120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120,
+    120, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 120, 120,
+    120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120,
+    120, 120, 32, 32, 32, 32, 32, 32, 10 
+}; 
+
+static unsigned char const invalid_ppm_5[] = {
+    80, 54, 10, 48, 32, 48, 10, 50, 53, 53, 10, 32, 32, 32, 32, 32,
+    32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+    32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120,
+    120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120,
+    120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120,
+    120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120,
+    120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32,
+    32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32,
+    32, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32,
+    32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32,
+    32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120,
+    120, 120, 120, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32,
+    32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120,
+    120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120,
+    120, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 120, 120,
+    120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120,
+    120, 120, 32, 32, 32, 32, 32, 32, 10 
+};
+
+static unsigned char const invalid_ppm_6[] = { 
+    80, 54, 10, 45, 49, 32, 45, 49, 10, 50, 53, 53, 10, 32, 32, 32,
+    32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32,
+    120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+    32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32,
+    120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120,
+    120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120,
+    120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120,
+    120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120,
+    120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120,
+    120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120,
+    32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32,
+    32, 32, 32, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120,
+    32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32,
+    32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32,
+    120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120,
+    120, 120, 120, 120, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32,
+    32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120,
+    120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120,
+    120, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 120, 120,
+    120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120,
+    120, 120, 32, 32, 32, 32, 32, 32, 10 
+};
+
+static unsigned char const invalid_ppm_7[] = {
+    80, 54, 32, 49, 48, 32, 49, 48, 32, 45, 49, 10, 32, 32, 32, 32,
+    32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+    32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120,
+    120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120,
+    120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120,
+    120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120,
+    120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32,
+    32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32,
+    32, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32,
+    32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32,
+    32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120,
+    120, 120, 120, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32,
+    32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120,
+    120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120,
+    120, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 120, 120,
+    120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120,
+    120, 120, 32, 32, 32, 32, 32, 32, 10 
+};
+
+static unsigned char const invalid_ppm_8[] = {
+    80, 54, 10, 49, 48, 32, 49, 48, 10, 48, 10, 32, 32, 32, 32, 32,
+    32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
+    32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120,
+    120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120,
+    120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120,
+    120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120,
+    120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32,
+    32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32,
+    32, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32,
+    32, 32, 32, 32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32,
+    32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120,
+    120, 120, 120, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32,
+    32, 120, 120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120,
+    120, 120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120,
+    120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120, 120,
+    120, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 120, 120,
+    120, 120, 120, 120, 32, 32, 32, 32, 32, 32, 120, 120, 120, 120,
+    120, 120, 32, 32, 32, 32, 32, 32, 10, 10 
+};
+
+static unsigned char const xpm_test_1[] = {
+    47, 42, 32, 88, 80, 77, 32, 42, 47, 10, 115, 116, 97, 116, 105,
+    99, 32, 99, 104, 97, 114, 32, 42, 91, 93, 32, 61, 32, 123, 10, 47,
+    42, 32, 119, 105, 100, 116, 104, 32, 104, 101, 105, 103, 104, 116,
+    32, 110, 99, 111, 108, 111, 114, 115, 32, 99, 104, 97, 114, 115,
+    95, 112, 101, 114, 95, 112, 105, 120, 101, 108, 32, 42, 47, 10,
+    34, 49, 48, 32, 49, 48, 32, 50, 32, 49, 34, 44, 10, 47, 42, 32,
+    99, 111, 108, 111, 114, 115, 32, 42, 47, 10, 34, 32, 32, 99, 32,
+    35, 55, 56, 55, 56, 55, 56, 34, 44, 10, 34, 46, 32, 99, 32, 35,
+    50, 48, 50, 48, 50, 48, 34, 44, 10, 34, 120, 32, 9, 99, 32, 35,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
+    34, 44, 10, 47, 42, 32, 112, 105, 120, 101, 108, 115, 32, 42, 47,
+    10, 34, 46, 46, 32, 32, 46, 46, 32, 32, 46, 46, 34, 44, 10, 34,
+    46, 46, 32, 32, 46, 46, 32, 32, 46, 46, 34, 44, 10, 34, 32, 32,
+    46, 46, 32, 32, 46, 46, 32, 32, 34, 44, 10, 34, 32, 32, 46, 46,
+    32, 32, 46, 46, 32, 32, 34, 44, 10, 34, 46, 46, 32, 32, 46, 46,
+    32, 32, 46, 46, 34, 44, 10, 34, 46, 46, 32, 32, 46, 46, 32, 32,
+    46, 46, 34, 44, 10, 34, 32, 32, 46, 46, 32, 32, 46, 46, 32, 32,
+    34, 44, 10, 34, 32, 32, 46, 46, 32, 32, 46, 46, 32, 32, 34, 44,
+    10, 34, 46, 46, 32, 32, 46, 46, 32, 32, 46, 46, 34, 44, 10, 34,
+    46, 46, 32, 32, 46, 46, 32, 32, 46, 46, 34, 10, 125, 59, 10
+};
+
 #endif
index f0b14a89a67d0e0930ee9d08762df64a2ea75208..f34e22d436cf8b423de05b8b76e6088588c4cbd1 100644 (file)
@@ -285,7 +285,7 @@ randomly_modify (const guchar *image, guint size, gboolean verbose)
 
 #define TEST(bytes, data_is_ok)                                        \
 do {                                                           \
-       g_print ("%-30s", "                  " #bytes " ");     \
+       g_print ("%-40s", "                  " #bytes " ");     \
        fflush (stdout);                                        \
        if (test_loader (bytes, sizeof (bytes), data_is_ok))    \
            g_print ("\tpassed\n");                             \
@@ -295,7 +295,7 @@ do {                                                                \
 
 #define LOWMEMTEST(bytes)                                      \
 do {                                                           \
-       g_print ("%-30s", "memory            " #bytes " ");     \
+       g_print ("%-40s", "memory            " #bytes " ");     \
        fflush (stdout);                                        \
        mem_test (bytes, sizeof (bytes));                       \
        g_print ("\tpassed\n");                                 \
@@ -304,19 +304,19 @@ do {                                                              \
 #define TEST_RANDOM(header, n_img, verbose)                    \
 do {                                                           \
        static guchar h[] = { header };                         \
-       g_print ("%-30s", "random            " #header " ");    \
+       g_print ("%-40s", "random            " #header " ");    \
        fflush (stdout);                                        \
        assault (h, sizeof (h), n_img, verbose);                \
        g_print ("\tpassed\n");                                 \
-} while (0);
+} while (0)
 
 #define TEST_RANDOMLY_MODIFIED(image, verbose)                 \
 do {                                                           \
-       g_print ("%-30s", "randomly modified " #image " ");     \
+       g_print ("%-40s", "randomly modified " #image " ");     \
        fflush (stdout);                                        \
        randomly_modify (image, sizeof (image), verbose);       \
        g_print ("\tpassed\n");                                 \
-} while (0);
+} while (0)
 
 
 
@@ -372,10 +372,24 @@ main (int argc, char **argv)
   g_random_set_seed (seed);
   
   g_type_init ();
-  g_log_set_fatal_mask (NULL, G_LOG_LEVEL_WARNING | G_LOG_LEVEL_ERROR | G_LOG_LEVEL_CRITICAL);
+  g_log_set_always_fatal (G_LOG_LEVEL_WARNING | G_LOG_LEVEL_ERROR | G_LOG_LEVEL_CRITICAL);
   
   putenv ("GDK_PIXBUF_MODULEDIR="BUILT_MODULES_DIR);
 
+  TEST (valid_ppm_1, TRUE);
+  TEST (valid_ppm_2, TRUE);
+  TEST (valid_ppm_3, FALSE); /* image is valid, but we don't handle maxval > 255 */
+  TEST (valid_ppm_4, TRUE);
+
+  TEST (invalid_ppm_1, FALSE); /* this test fails to fail, because it's shorter than LOADER_HEADER_SIZE */
+  TEST (invalid_ppm_2, FALSE);
+  TEST (invalid_ppm_3, FALSE);
+  TEST (invalid_ppm_4, FALSE);
+  TEST (invalid_ppm_5, FALSE);
+  TEST (invalid_ppm_6, FALSE);
+  TEST (invalid_ppm_7, FALSE);
+  TEST (invalid_ppm_8, FALSE);
+
   TEST (valid_gif_test, TRUE); 
   TEST (gif_test_1, FALSE);   
   TEST (gif_test_2, FALSE);   
@@ -384,31 +398,39 @@ main (int argc, char **argv)
   
   TEST (valid_png_test, TRUE);
   TEST (png_test_1, FALSE);   
-  
+  TEST (png_test_2, FALSE);
+
+
+#if 0
   TEST (valid_ico_test, TRUE);
+#endif
   
   TEST (ico_test_1, FALSE);
   
-#if 0
-  TEST (wbmp_test_1, FALSE); 
-  TEST (wbmp_test_2, FALSE);
-#endif
-  
-#if 0
-  TEST (png_test_2, FALSE);   
-#endif
-
   TEST (valid_jpeg_test, TRUE);
   
   TEST (valid_tiff1_test, TRUE);
-  TEST (tiff1_test_1, FALSE);   
+  TEST (tiff1_test_1, FALSE);
+  TEST (tiff1_test_2, FALSE);
 
-#if 0
-  TEST_RANDOMLY_MODIFIED (valid_gif_test, FALSE);   /*  these all break more or */
-  TEST_RANDOMLY_MODIFIED (valid_png_test, FALSE);   /* less spectacularly, patched or not */
-  TEST_RANDOMLY_MODIFIED (valid_tiff1_test, FALSE);
-#endif
+  TEST (valid_tga_test, TRUE);
+  TEST (tga_test_1, FALSE);
 
+  TEST (xpm_test_1, FALSE);
+  
+  TEST_RANDOM (GIF_HEADER, 150, FALSE);
+  TEST_RANDOM (PNG_HEADER, 1100, FALSE);
+  TEST_RANDOM (JPEG_HEADER, 800, FALSE);
+  TEST_RANDOM (TIFF1_HEADER, 150, FALSE);
+  TEST_RANDOM (TIFF2_HEADER, 150, FALSE);
+#define PNM_HEADER 'P', '6'
+  TEST_RANDOM (PNM_HEADER, 150, FALSE);
+  
+  TEST_RANDOMLY_MODIFIED (valid_tiff1_test, FALSE);
+  TEST_RANDOMLY_MODIFIED (valid_gif_test, FALSE);
+  TEST_RANDOMLY_MODIFIED (valid_png_test, FALSE);
+  TEST_RANDOMLY_MODIFIED (valid_tga_test, FALSE);
+  TEST_RANDOMLY_MODIFIED (valid_jpeg_test, FALSE);  /* The jpeg loader does not break */
 #if 0
   TEST_RANDOMLY_MODIFIED (valid_ico_test, TRUE);    /* The ico loader does not seem to
                                                     * break, but the image tend to 
@@ -416,16 +438,10 @@ main (int argc, char **argv)
                                                     * the wbmp loader is broken
                                                     */
 #endif
-  TEST_RANDOMLY_MODIFIED (valid_jpeg_test, FALSE);  /* The jpeg loader does not break */
-
 #if 0
-  TEST_RANDOM (GIF_HEADER, 150, FALSE);
-  TEST_RANDOM (PNG_HEADER, 10000, FALSE);
-  TEST_RANDOM (JPEG_HEADER, 8000, FALSE);
-  TEST_RANDOM (TIFF1_HEADER, 150, FALSE);
-  TEST_RANDOM (TIFF2_HEADER, 150, FALSE);
+  TEST (wbmp_test_1, FALSE); 
+  TEST (wbmp_test_2, FALSE);
 #endif
-  
   /* memory tests */
 
   /* How do the loaders behave when memory is low?